shell学习笔记

一,命令
cat:
1,cat -n 1.txt –显示行号
2,cat -s 1.txt –压缩空白行
3,cat 1.txt | tr -s ‘\n’ –tr移除空白行
4,录制和回放 script scriptreplay

find:
1,find . -print –打印文件和目录的文件
2,find . -name “example*” -print –根据文件名查找 不去分大小写
3,find . ! -name “*.txt” -print –查找非txt文件
4,find . -maxdepth(-mindepth) 2 -type f -print –查找深度为2 的文件 [-type f(文件), l(符号链接), d(目录),]
5,find . -type f -atime (+-)7 -print –查找 (超过 之内)7天访问过的文件 根据文件时间检索
6,find . -type f -size 2k –文件大小

xargs:
1,cat 1.txt | xargs –单行输出
2,cat 2.txt | xargs -n 3 –每行3字符串输出
3,cat 1.txt | xargs -d ‘xx’ –以‘xx’ 分隔
查找包含某个字符串的文件,并替换
Example
grep -rl ‘windows’ ./ | xargs sed -i ‘s/windows/linux/g’
This will search for the string ‘windows’ in all files relative to the current directory and replace ‘windows’ with ‘linux’ for each occurrence of the string in each file.

tr: 转换,文本替换工具
1,echo “ABCDEFG” | tr ‘A-Z’ ‘a-z’ –转化为小写
2,echo 123543 | tr ‘0-9’ ‘123456’ –加密
3,echo 789654 | tr ‘123456’ ‘0-9’ –解密
4,ROT13算法 加解密
5,echo ‘Hello 123 world 7998’ | tr -d ‘0-9’ –删除数字并打印

md5sum :校验与核实
1,md5sum 1.txt –查看1.txt的MD5 36个字符的16进制串
2,md5sum 1.txt > 1.md5 –将1.txt文件的MD5信息保存在1.md5文件中 (文件名可为多个)
3,md5sum -c 1.md5 –校验当前文件夹下是否有与1.md5中md5信息匹配的文件
4,md5deep -rl shell > shel.md5 –查看shell文件夹md5,-r 使用递归方式 -l 使用相对路径
sort 排序,单一与重复
1,sort 1.txt –输出排序后的信息
2,sort 1.txt | uniq –排序并去除重复的行
3,sort -n 1.txt –按数字排序
4,sort -r 1.txt –逆序排序
5,sort -M 1.txt –按月份排序
6,sort -n -r -k 1 1.txt –按数字,逆序,第1列,排序(-nrk)
7,sort -k 2 1.txt –按第2列排序
8,sort 1.txt | uniq -u –只显示唯一行(查看没有出现重复的行)
9,sort 1.txt | uniq -c –统计各行在文件中出现的次数
10,sort 1.txt | uniq -d –找出文件中出现重复的行
dd,split,rename 分隔文件和数据
1,dd if=3.log bs=100k count=1 of=data.file –以3.log为模板,分隔出1块大小为100k的文件data.file (count=2 则文件大小为200k)
2,split -b 10k data.file –将data.file按每份10k的大小分隔出多个文件
3,split -l 100 data.file –将data.file分隔成多个文件,每个文件100行
4,split -l 200 3.log -d -a 4 zhongdui –每个文件200行,文件分别为zhongdui0000,zhongdui0001,zhongdui0002
批量重命名和移动
1,重命名.jpg .png
rename.sh
count=1;

二,以文件之名
chmod权限
1,ls -l 查看文件权限如下
drwxrwxr-x 2 kongdexing kongdexing 4096 Dec 31 15:35 ./
drwxrwxr-x 11 kongdexing kongdexing 4096 Dec 31 10:29 ../
-rw-rw-r– 1 kongdexing kongdexing 66 Dec 31 13:08 11.txt
-rw-rw-r– 1 kongdexing kongdexing 107 Dec 31 14:04 1.txt
-rw-rw-r– 1 kongdexing kongdexing 103 Dec 31 13:57 2.txt
-rw-rw-r– 1 kongdexing kongdexing 174147 Dec 31 14:29 3.log
-rw-rw-r– 1 kongdexing kongdexing 55 Dec 31 12:05 4.txt
-rw-rw-r– 1 kongdexing kongdexing 17814 Nov 27 16:45 abc.jpg
-rwxrwxrwx 1 kongdexing kongdexing 11 Dec 31 11:38 cecho.sh*
-rw-rw-r– 1 kongdexing kongdexing 67922 Nov 27 16:18 danza.jpg
-rw-rw-r– 1 kongdexing kongdexing 102400 Dec 31 14:33 data.file
-rw-rw-r– 1 kongdexing kongdexing 102400 Dec 31 15:35 junk.data
-rwxrwxrwx 1 kongdexing kongdexing 173 Dec 31 15:23 rename.sh*
-rw-rw-r– 1 kongdexing kongdexing 120 Dec 31 12:05 tr.md5
-rw-rw-r– 1 kongdexing kongdexing 18 Dec 31 12:02 tr.txt

第一列输出明确了后面的输出,其中第一个字母对应关系
- 普通文件,d 目录,c 字符设备,b 块设备,l 符号链接,s 套接字,p 管道
剩下的部分划分三个组,每组3个字符(—),分别对应用户权限,用户组权限,其他用户权限。这9个字符中的每一个字符指明是否设置了某种权限。如果设置了权限,对应位置上会出现一个字符,否则就以一个‘-’表明没有设置对应的权限。
r 可读,w 可写,x 可执行

2,权限修改
u -用户,g-用户组,o-其他实体权限,a-所有
chmod a+x 1.txt – 给所有类别添加可执行权限
chmod u-rw 1.txt –删除用户可读可写权限
8进制设置权限:r– = 4, -w- = 2, –x = 1; 所以 rwx = 7,chmod 777 1.txt 设置全部权限可用
3,chmod 777 . -R –递归方式修改当前目录下的所有文件和子目录的权限
三 让文件飞
chatter,touch,生成iso文件及混合iso,diff
1,sudo chatter +i 1.txt –文件设置为不可修改
2,touch 112.txt – 创建112.txt文件(若文件存在,将该文件相关的所有时间戳更改为当前时间)
3,touch -a 112.txt –若文件存在,只更改文件访问时间
4,touch -m 112.txt –文件存在,更改文件内容修改时间
5,cat 11.txt > image.iso –用cat创建iso镜像算是小技巧
6,diff 11.txt 4.txt – 非一体化(non-unified)形式的diff输出
7,diff -u 11.txt 4.txt –一体化形式的diff输出
8,diff -u 11.txt 4.txt > diff11-4.patch –将diff的输出重定向到一个文件
9,patch -p1 11.txt

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值