韦编三绝(二)shell指令

1. 常用的shell指令

  • |
| 符号,是个管道符号,表示前后指令命令同时执行;
  • clear
clear 清除终端所有已存在的命令和结果,等价于ctrl + L,并不是真的清楚了,只是隐藏在了最上方,可以拖动滚动条查看。
  • df
df 以磁盘分区为单位查看文件系统,可以获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

常用组合
df -hl:查看磁盘剩余空间
df -h:查看每个根路径的分区大小
du -sh [目录名]:返回该目录的大小
du -sm [文件夹]:返回该文件夹总M数
du -h [目录名]:查看指定文件夹下的所有文件大小(包含子文件夹)

显示内容参数说明:
Filesystem:文件系统
Size: 分区大小
Used: 已使用容量
Avail: 还可以使用的容量
Use%: 已用百分比
Mounted on: 挂载点 

常用参数:
-a, --all 包含所有的具有 0 Blocks 的文件系统
--block-size={SIZE} 使用 {SIZE} 大小的 Blocks
-h, --human-readable 使用人类可读的格式(预设值是不加这个选项的...)
-H, --si 很像 -h, 但是用 1000 为单位而不是用 1024
-i, --inodes 列出 inode 资讯,不列出已使用 block
-k, --kilobytes 就像是 --block-size=1024
-l, --local 限制列出的文件结构
-m, --megabytes 就像 --block-size=1048576
--no-sync 取得资讯前不 sync (预设值)
-P, --portability 使用 POSIX 输出格式
--sync 在取得资讯前 sync
-t, --type=TYPE 限制列出文件系统的 TYPE
-T, --print-type 显示文件系统的形式
-x, --exclude-type=TYPE 限制列出文件系统不要显示 TYPE
-v (忽略)
--help 显示这个帮手并且离开
--version 输出版本资讯并且离开
  • du
du disk usage,含义为显示磁盘空间的使用情况,用于查看指定的目录或文件所占用的磁盘空间

常用组合
du -sh                   //查看当前目录大小
du -h test               //显示test目录所占用空间情况
du-h --max-depth=1       //查看各文件夹大小
du-h --max-depth=1 /path //查看指定文件夹大小

常用参数:
-a或-all 显示目录中个别文件的大小。
-b或-bytes 显示目录或文件大小时,以byte为单位。
-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-D或--dereference-args 显示指定符号连接的源文件大小。
-h或--human-readable 以K,M,G为单位,提高信息的可读性。
-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。
-k或--kilobytes 以1024 bytes为单位。
-l或--count-links 重复计算硬件连接的文件。
-L<符号连接>--dereference<符号连接> 显示选项中所指定符号连接的源文件大小。
-m或--megabytes 以1MB为单位。
-s或--summarize 仅显示总计,只给出占用的数据块总数。
-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。
-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-X<文件>--exclude-from=<文件><文件>指定目录或文件。
--exclude=<目录或文件> 略过指定的目录或文件。
--max-depth=<目录层数> 超过指定层数的目录后,予以忽略。
--help 显示帮助。
--version 显示版本信息。
  • grep
grep 命令是查找(Global Regular Expression Print),能使用正则表达式搜索文本,然后把匹配的行显示出来;
  • ps
ps 命令的作用是显示进程信息

常用组合:
sudo ps -ef | grep test //显示含test字符的所有进程全格式信息

常用参数: 
-e : 显示所有进程 
-f : 全格式 
-h : 不显示标题 
-l : 长格式 
-w : 宽输出 
a :显示终端上的所有进程,包括其他用户的进程。 
r :只显示正在运行的进程。 
u :以用户为主的格式来显示程序状况。 
x :显示所有程序,不以终端机来区分。

显示内容参数说明:
列序号    列含义    列含义说明
1    UID    用户标识ID
2    PID    进程ID
3    PPID   父进程ID
4    C      CPU占用率
5    STIME  进程开始时间
6    TTY    启动此进程的TTY(终端设备)
7    TIME   此进程运行的总时间
8    CMD    完整的命令名(带启动参数)

UID       PID    PPID  C  STIME    TTY     TIME       CMD
root     2649     1    0  10:29     ?     00:50:17  ./test
usrname  12957  12949  0  10:31    pts/1  00:00:00  grep --color=auto test

  • scp
scp secure copy,是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。
用于Linux之间复制文件和目录。scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。

常用组合:
1.从本地复制到远程
scp local_file remote_username@remote_ip:remote_folder 
scp local_file remote_username@remote_ip:remote_file 
scp local_file remote_ip:remote_folder 
scp local_file remote_ip:remote_file 
//第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;
//第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名; 
//scp /home/space/music/1.mp3 root@www.runoob.com:/home/root/others/music 
//scp /home/space/music/1.mp3 root@www.runoob.com:/home/root/others/music/001.mp3 
//scp /home/space/music/1.mp3 www.runoob.com:/home/root/others/music 
//scp /home/space/music/1.mp3 www.runoob.com:/home/root/others/music/001.mp3

复制目录命令格式:
scp -r local_folder remote_username@remote_ip:remote_folder 
scp -r local_folder remote_ip:remote_folder 
//第1个指定了用户名,命令执行后需要再输入密码;
//第2个没有指定用户名,命令执行后需要输入用户名和密码; 
//scp -r /home/space/music/ root@www.runoob.com:/home/root/others/ 
//scp -r /home/space/music/ www.runoob.com:/home/root/others/ 
2.从远程复制到本地 
从远程复制到本地,只要将从本地复制到远程的命令的后2个参数调换顺序即可。
如果远程服务器防火墙有为scp命令设置了指定的端口,我们需要使用 -P 参数来设置命令的端口号,命令格式如下:
#scp 命令使用端口号 4588
scp -P 4588 remote@www.runoob.com:/usr/local/sin.sh /home/administrator
使用scp命令要确保使用的用户具有可读取远程服务器相应文件的权限,否则scp命令是无法起作用的。
  • tail
tail 命令可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件。

常用组合:
tail notes.log         //默认显示最后 10 行
tail -f notes.log      //要跟踪名为 notes.log 的文件的增长情况
tail -n +20 notes.log  //从第 20 行至文件末尾

常用参数:
-f 循环读取
-q 不显示处理信息
-v 显示详细的处理信息
-c<数目> 显示的字节数
-n<行数> 显示文件的尾部 n 行内容
--pid=PID 与-f合用,表示在进程ID,PID死掉之后结束
-q, --quiet, --silent 从不输出给出文件名的首部
-s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒 

2. 脚本的编写

text.sh的文件的编写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小老鼠不吃猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值