3、BASH命令
命令分类
- Ls、cd、pwd, (查看文件内容:cat、more、tail)、(对文件经行操作:cp、rm)、(top: 查看性能)、(ps:查看进程信息)、
- (grep:筛选内容),(ifconfig: Linux ifconfig命令用于显示或设置网络设备)(netstat netstat -pantu:查看这台电脑与其他数据的链接情况), (awk AWK 是一种处理文本文件的语言,是一个强大的文本分析工具). (sortLinux sort 命令用于将文本文件内容加以排序),(route), (mount挂载)、(dmesg:用于显示开机信息)、
- (find.文件查找find) (whereis. 查找文件)Echo, vi编辑器
-
什么BASH命令?
在Linux上采用bash作为标准,基本上它描述了对带有“.sh”扩展名的vi编辑器等文本的处理并执行。 与编程一样,它有许多函数,如变量,函数和算术处理,所以如果你是一个小程序,你可以用bash编写它。 此外,由于bash是由shell执行的,因此它也称为shell脚本。
LS命令
ls:列出当前目录下的内容
其中:①[选项] 参数:
-a 显示所有文件及目录.
-l 除文件名称外,将文件格式、权限、拥有者、文件大小等信息详细列出。
-r 将文件以相反次序显示(原定依英文字母次序正序列出)。
-t 将文件依建立时间之先后次序列出。
-A 同 -a ,但不列出 “.” (目前目录) 及 “…” (父目录)。
-F 根据文件形态,在列出的文件名称后加符号作为标识。例如可执行档则加 “*”, 目录则加 “/”。
-R 若目录下有文件,则目录下所属文件都依序列出。
蓝色文件----------目录
白色文件----------一般文件,如文本文件,配置文件,源码文件等
浅蓝色文件----------链接文件,主要是使用ln命令建立的文件。
绿色文件----------可执行文件,可执行的程序。
红色文件-----------压缩文件或者包文件。
cd命令
1.cd命令的作用
英文为:change directory,用于切换当前工作目录,既可用于切换绝对路径,如cd /tmp/us,也可用于切换相对路径,如cd …。注意cd之后需用英文状态下的空格分隔。
2.cd命令语法详解
命令行:cd [目录名]
3.命令使用实例
进入根目录,即最上层目录。
命令行:cd /
拓展知识:根目录和家目录简单区分:
根目录是所有用户的一个共享的部分,是最上层目录,而家目录里面一般只会是当前用户的文件。
进入指定目录。
命令行:cd /tmp
查看当前所处目录位置:
命令行:pwd
运行结果:
切换回上一级目录。
命令行:cd …
运行结果:
返回上两级目录
命令行:cd …/…/
运行结果:
显示当前目录。
命令行:cd .
运行结果:
切换到上一次的操作目录
命令行:cd -
cat命令
cat /var/log/messages # 查看日志
1.cat命令的作用
显示文件内容。
2.cat命令语法详解
命令行:cat [选项] [文件名]
其中:[选项]参数有
n:由 1 开始对所输出所有内容,包括空行进行行数编号。
b:由1开始对所输出内容进行行数编号,但空行仅做显示不进行行数编号。
3.命令使用实例
显示/etc/issue文件内容。
命令行:cat /etc/issue
显示文件内容并对其所有内容,包括空行进行行数编号。
命令行:cat -n demo.list
more命令
显示文件在一个页面的内容,剩余的按enter向下查看
more /var/log/messages
more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。
more指令
1.基本语法
more 要查看的文件
2.操作说明
操作 功能说明
空白键 (space) 代表向下翻一页;
Enter 代表向下翻『一行』;
q 代表立刻离开 more ,不再显示该文件内容。
Ctrl+F 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
more指令也有其局限性,比如当查找的内容已经在之前显示过了,但是在more指令中是没有方法会退到前面去的。
less指令
less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
1.基本语法
less 要查看的文件
2.操作说明
操作 功能说明
空白键 向下翻动一页;
[pagedown] 向下翻动一页
[pageup] 向上翻动一页;
/字串 向下搜寻『字串』的功能;n:向下查找;N:向上查找;
?字串 向上搜寻『字串』的功能;n:向上查找;N:向下查找;
q 离开 less 这个程序;
之后我们可以根据之前more指令的操作说明表格来浏览文件。
用less指令查看文件
head #查看前几行
tail命令
tail 与 watch 相结合
tail默认情况下,会查看文件的后10行内容: tail /var/log/messages
watch -n 2 tail -n 20 /var/log/messages #每隔两秒显示最后20行的内容
当文件内容比较大的时候,我们可以使用head和tail两个侄女纲领,来分别查看其前面的几行或者后面的几行。这就显得方便了很多。
head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容。
基本语法
head 文件 (功能描述:查看文件头10行内容)
head -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)
2.选项说明
表1-18
选项 功能
-n <行数> 指定显示头部内容的行数
tail用于输出文件中尾部的内容,默认情况下tail指令显示文件的后10的内容。
基本语法
(1)tail 文件 (功能描述:查看文件后10行内容)
(2)tail -n 5 文件 (功能描述:查看文件后5行内容,5可以是任意行数)
(3)tail -f 文件 (功能描述:实时追踪该文档的所有更新)
rm命令
删除
rmdir命令语法详解
命令行:rmdir [选项] [目录名]
其中:①[选项] 参数:
-p 是当子目录被删除后使上一级目录成为空目录的话,则一并删除。
4.rm命令语法详解
命令行:rm [选项] [目录名]
其中:①[选项] 参数:
-i 删除前逐一进行删除确认。
-f 强制删除,即使原档案属性设为唯读也可以直接删除,无需进行确认。
-r 将目录及目录中的文件一并删除。
-d 只删除空目录。
5.命令使用实例
删除tmp目录下的usa空目录。(使用rmdir命令)
命令行:rmdir /usa
rmdir只能删除空目录,如当前目录不为空,则无法删除。如:使用“rmdir /china”命令行删除/china目录,我们已知/china目录中存在/shenzhen目录,则运行结果:
删除tmp目录下的usa空目录。(使用rm命令)
命令行:rm -d /usa
运行结果:
删除非空目录korea及其下属所含所有文件。
命令行:rm -r /korea
强制删除非空目录china及其下属所含所有文件。
命令行:rm -rf /china
运行结果:
cp命令
1.cp命令的作用
用于复制文件或目录。
2.cp命令语法详解
命令行:①cp [源文件] [目标文件]
②cp -r [源目录] [目标目录]
(Ps. 用户使用cp命令复制目录时,必须使用参数 -r 或者 -R,运用实例详见《Kali Linux基础操作学习篇——cp命令(二)》)
3.命令使用实例
将1.txt复制到/tmp目录中。
命令行:cp 1.txt /tmp
批量进行文件复制。
命令行:cp 1.txt 2.txt /tmp
扩展知识:Linux中新建文件
命令行:touch 文件名
实例:touch 1.txt 2.txt
将3.txt复制到/tmp目录中并将文件名改为33.txt。
命令行:cp 3.txt /tmp/33.txt
如需保持目标文件与源文件属性一致,则需使用 -p参数。
命令行:cp -p /tmp/4.txt / 。(PS:“/”代表根目录)
mount挂载命令
1.命令名称:mount
命令位置:/bin/mount
执行权限:所有用户
命令语法:mount [-t 文件系统] 设备文件名 挂载点
举个栗子:mount -t iso9600 /dev/sr0 /mnt/cdrom
备注:1. -t iso9600 可以不写 因为光盘的文件系统时默固定的。
2./dev/sr0也可以写成/dev/cdrom,sro是原文件,cdrom是 sr0的软链接,是一个快捷方式。可用命令 ll /dev/cdrom进行查看。
3. Linux的挂载: 给每个分区分配挂载点。Windows 挂载: 给分区分配盘符的过程叫挂载。Linux中的挂载点类似于window中的盘符。在Windows中的盘符是C、D、F,分区都是自动挂载。windows是自动挂载,当然如果你的Linux是图形界面也是自动挂载。
4. 如果是字符界面的,每次开机时都必须手工挂载。windows也有这个过程,U盘插上,一检测,一装驱动,然后给他分配盘符,其实分配盘符的过程就是挂载。
5. 在盘符里访问数据,#cd /mnt/cdtom
#ls
umount卸载命令
1.卸载命令 : umount /dev/cdrom 或 /mnt/cdrom
备注: 1. 写设备文件名/dev/cdrom或挂载点/mnt/cdrom都行,因为他们两个都已经链接到一块了,所以写哪一个都行。but不能两个都写,否则重复,报错。
2. 当卸载的时候,千万不能在光盘挂点下面卸载, 因为你在挂载点这个地方,系统会认为你在工作,不让你卸载。所以你要回到自己的宿主目录(家目录)中,再去卸载。
dmesg
dmesg [-cn][-s <缓冲区大小>]
参数说明:
-c 显示信息后,清除 ring buffer 中的内容。
-s<缓冲区大小> 预设置为 8196,刚好等于 ring buffer 的大小。
-n 设置记录信息的层级。
find
find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。
1.基本语法
find [搜索范围] [选项]
2.选项说明
表1-27
选项 功能
-name<查询方式> 按照指定的文件名查找模式查找文件
-user<用户名> 查找属于指定用户名所有文件
-size<文件大小> 按照指定的文件大小查找文件。
注意:通配符的位置任意,只要符合查找条件即可。
将name 替换为iname 即可忽略大小写的查找
whereis
语法
whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]
参数:
-b 只查找二进制文件。
-B<目录> 只在设置的目录下查找二进制文件。
-f 不显示文件名前的路径名称。
-m 只查找说明文件。
-M<目录> 只在设置的目录下查找说明文件。
-s 只查找原始代码文件。
-S<目录> 只在设置的目录下查找原始代码文件。
-u 查找不包含指定类型的文件。
$ whereis -b bash
$ whereis -m bash
Linux top命令
Linux top命令用于实时显示 process 的动态。
使用权限:所有使用者。
top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]
参数说明:
- d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
- q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
- c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称
- S : 累积模式,会将己完成或消失的子进程 ( dead child process ) 的 CPU time 累积起来
- s : 安全模式,将交谈式指令取消, 避免潜在的危机
- i : 不显示任何闲置 (idle) 或无用 (zombie) 的进程
- n : 更新的次数,完成后将会退出 top
- b : 批次档模式,搭配 "n" 参数一起使用,可以用来将 top 的结果输出到档案内
Linux ps 命令
Linux ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。
ps [options] [--help]
参数:
- ps 的参数非常多, 在此仅列出几个常用的参数并大略介绍含义
- -A 列出所有的进程
- -w 显示加宽可以显示较多的资讯
- -au 显示较详细的资讯
- -aux 显示所有包含其他使用者的行程
-
au(x) 输出格式 :
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND- USER: 行程拥有者
- PID: pid
- %CPU: 占用的 CPU 使用率
- %MEM: 占用的记忆体使用率
- VSZ: 占用的虚拟记忆体大小
- RSS: 占用的记忆体大小
- TTY: 终端的次要装置号码 (minor device number of tty)
-
STAT: 该行程的状态:
- D: 无法中断的休眠状态 (通常 IO 的进程)
- R: 正在执行中
- S: 静止状态
- T: 暂停执行
- Z: 不存在但暂时无法消除
- W: 没有足够的记忆体分页可分配
- <: 高优先序的行程
- N: 低优先序的行程
- L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)
- START: 行程开始时间
- TIME: 执行的时间
- COMMAND:所执行的指令
Linux ifconfig命令
Linux ifconfig命令用于显示或设置网络设备。
ifconfig可设置网络设备的状态,或是显示目前的设置
ifconfig [网络设备][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<网络设备类型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>]
[media<网络媒介类型>][mem_start<内存地址>][metric<数目>][mtu<字节>][netmask<子网掩码>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>]
[IP地址]
参数说明:
- add<地址> 设置网络设备IPv6的IP地址。
- del<地址> 删除网络设备IPv6的IP地址。
- down 关闭指定的网络设备。
- <hw<网络设备类型><硬件地址> 设置网络设备的类型与硬件地址。
- io_addr<I/O地址> 设置网络设备的I/O地址。
- irq<IRQ地址> 设置网络设备的IRQ。
Linux awk 命令
AWK 是一种处理文本文件的语言,是一个强大的文本分析工具。
之所以叫 AWK 是因为其取了三位创始人 Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的 Family Name 的首字符。
语法
awk [选项参数] 'script' var=value file(s)
或
awk [选项参数] -f scriptfile var=value file(s)
选项参数说明:
- -F fs or --field-separator fs
指定输入文件折分隔符,fs是一个字符串或者是一个正则表达式,如-F:。 - -v var=value or --asign var=value
赋值一个用户定义变量。 - -f scripfile or --file scriptfile
从脚本文件中读取awk命令。 - -mf nnn and -mr nnn
对nnn值设置内在限制,-mf选项限制分配给nnn的最大块数目;-mr选项限制记录的最大数目。这两个功能是Bell实验室版awk的扩展功能,在标准awk中不适用。 - -W compact or --compat, -W traditional or --traditional
在兼容模式下运行awk。所以gawk的行为和标准的awk完全一样,所有的awk扩展都被忽略。 - -W copyleft or --copyleft, -W copyright or --copyright
打印简短的版权信息。 - -W help or --help, -W usage or --usage
打印全部awk选项和每个选项的简短说明。 - -W lint or --lint
打印不能向传统unix平台移植的结构的警告。 - -W lint-old or --lint-old
打印关于不能向传统unix平台移植的结构的警告。 - -W posix
打开兼容模式。但有以下限制,不识别:/x、函数关键字、func、换码序列以及当fs是一个空格时,将新行作为一个域分隔符;操作符**和**=不能代替^和^=;fflush无效。 - -W re-interval or --re-inerval
允许间隔正则表达式的使用,参考(grep中的Posix字符类),如括号表达式[[:alpha:]]。 - -W source program-text or --source program-text
使用program-text作为源代码,可与-f命令混用。 - -W version or --version
打印bug报告信息的版本。
- media<网络媒介类型> 设置网络设备的媒介类型。
- mem_start<内存地址> 设置网络设备在主内存所占用的起始地址。
- metric<数目> 指定在计算数据包的转送次数时,所要加上的数目。
- mtu<字节> 设置网络设备的MTU。
- netmask<子网掩码> 设置网络设备的子网掩码。
- tunnel<地址> 建立IPv4与IPv6之间的隧道通信地址。
- up 启动指定的网络设备。
- -broadcast<地址> 将要送往指定地址的数据包当成广播数据包来处理。
- -pointopoint<地址> 与指定地址的网络设备建立直接连线,此模式具有保密功能。
- -promisc 关闭或启动指定网络设备的promiscuous模式。
- [IP地址] 指定网络设备的IP地址。
- [网络设备] 指定网络设备的名称。
Linux sort 命令
Linux sort 命令用于将文本文件内容加以排序。
sort 可针对文本文件的内容,以行为单位来排序。
语法
sort [-bcdfimMnr][-o<输出文件>][-t<分隔字符>][+<起始栏位>-<结束栏位>][--help][--verison][文件][-k field1[,field2]]
参数说明:
- -b 忽略每行前面开始出的空格字符。
- -c 检查文件是否已经按照顺序排序。
- -d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
- -f 排序时,将小写字母视为大写字母。
- -i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
- -m 将几个排序好的文件进行合并。
- -M 将前面3个字母依照月份的缩写进行排序。
- -n 依照数值的大小排序。
- -u 意味着是唯一的(unique),输出的结果是去完重了的。
- -o<输出文件> 将排序后的结果存入指定的文件。
- -r 以相反的顺序来排序。
- -t<分隔字符> 指定排序时所用的栏位分隔字符。
- +<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
- --help 显示帮助。
- --version 显示版本信息。
- [-k field1[,field2]] 按指定的列进行排序。

浙公网安备 33010602011771号