金融信创如何推动金融服务效率与安全的全面提升
890
2022-08-30
Linux常见命令汇总(累积中。。。)
1 Linux下统计当前文件夹下的文件个数、目录个数
统计当前文件夹下文件的个数,包括子文件夹里的
ls -lR|grep "^-"|wc -l
统计文件夹下目录的个数,包括子文件夹里的
ls -lR | grep "^d" | wc -l
统计当前文件夹下文件的个数
ls -l | grep "^-" | wc -l
统计当前文件夹下目录的个数
ls -l | grep "^d" | wc -l
附: 统计输出信息的行数
wc -l
将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d
grep "^-"
2 解压缩命令详解
tar命令
解包:tar zxvf FileName.tar 打包:tar czvf FileName.tar DirName (注:tar是打包,不是压缩!)
gz命令
解压1:gunzip FileName.gz 解压2:gzip -d FileName.gz 压缩:gzip FileName
tar.gz 和 .tgz
解压:tar zxvf FileName.tar.gz 压缩:tar zcvf FileName.tar.gz DirName 压缩多个文件:tar zcvf FileName.tar.gz DirName1 DirName2 DirName3 …
bz2命令
解压1:bzip2 -d FileName.bz2 解压2:bunzip2 FileName.bz2 压缩: bzip2 -z FileName
.tar.bz2
解压:tar jxvf FileName.tar.bz2 压缩:tar jcvf FileName.tar.bz2 DirName
bz命令
解压1:bzip2 -d FileName.bz 解压2:bunzip2 FileName.bz
.tar.bz
解压:tar jxvf FileName.tar.bz
Z命令
解压:uncompress FileName.Z 压缩:compress FileName
.tar.Z
解压:tar Zxvf FileName.tar.Z 压缩:tar Zcvf FileName.tar.Z DirName
zip命令
解压:unzip FileName.zip 压缩:zip FileName.zip DirName
zip或tar排除指定文件进行压缩
zip–>>>>可以使用zip命令的-x参数排除指定的文件
test目录下有1.png、2.tt、good.txt三个文件,现在将test目录压缩成test.zip,排除其目录下的good.txt
zip -r test.zip ./test -x "./test/good.txt"
tar–>>>>可以使用tar命令的–exclude参数排除指定的文件
123目录下有3个子目录,aa、bb、cc.我现在想只对aa和bb目录打包压缩,命令如下:
tar -zcvf 123.tar.gz --exclude=cc ./123
3 文件或者目录复制
3-1 本地复制
命令 | 说明 |
cp test.log /home/geshan/logs | 复制test.log文件到/home/geshan/logs/目录下 |
cp test.log /home/geshan/logs/cptest.log | 复制test.log文件到/home/geshan/logs/目录下并重新命名为cptest.log |
cp -r logs/ /home/geshan/ | 复制 logs目录及目录下所有文件到/home/geshan/目录下,此时该目录会有logs目录 |
cp -r logs/ /home/geshan/testlogs/ | 复制 logs目录及目录下所有文件到/home/geshan/testlogs/目录下,并把logs目录重新命名为testlogs,前提是/home/geshan/目录没有testlogs目录 |
3-2 远程复制
情况1:当前机器—拷贝到—>远程机器
scp 本地Linux系统文件路径 远程用户名@IP地址:远程系统文件绝对路径名
scp /usr/local/tools/* root@192.168.0.240:/usr/local/tools
递归复制 加参数 -r
scp -r /usr/local/tools/ root@192.168.0.240:/usr/local/tools
批量拷贝当前机器的多个文件夹到远程机器上
scp -r {products,scan_detail,storages,traces}/ root@121.56.166.188:/usr/local/solrconfig_data
情况2:远程机器—拷贝到—>当前机器
scp 远程用户名@IP地址:文件的绝对路径 本地Linux系统路径
scp -r root@192.168.0.241:/usr/local/tools/* /usr/local/tools
4 查看文件或日志
4-1 head
命令 | 说明 |
head test.log | 查看test.log文件前几行日志内容 |
head -n 20 test.log | 查看test.log文件前20行日志内容 |
head -n -20 test.log | 查看test.log除了最后20行日志内容 |
4-2 tail
命令 | 说明 |
tail -f test.log | 实时查看test.log文件最后几行日志内容 |
tail -f -n 20 test.log | 实时查看test.log文件最后20行日志内容 |
tail -n 20 test.log | 查看test.log文件最后20行日志内容 |
tail -n +20 test.log | 查看test.log文件20行后的所有日志内容 |
4-3 cat
命令 | 说明 |
cat test.log | 查看test.log文件所有内容 |
5 修改权限
Linux系统文件或目录的访问权限分为只读,只写和可执行三种,分别代表可读、可写和可执行。
5-1 chgrp命令
改变文件或目录所属的组
命令 | 说明 |
chgrp geshan test.log | 把test.log文件所属的组修改为geshan组 |
chgrp -R geshan logs/ | 把logs目录及该目录下所有文件所属的组修改为geshan组 |
5-2 chown命令
更改某个文件或目录所属的用户
命令 | 说明 |
chown geshan test.log | 把test.log文件所属用户修改为geshan用户 |
chown -R geshan logs/ | 把logs目录及该目录下所有文件所属用户修改为geshan用户 |
5-3 chmod命令
用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。
命令 | 说明 |
chmod 777 test.log | 把test.log文件修改可读写执行(即777)操作。 |
chmod -R 666 logs/ | 把logs目录及目录下所有文件修改为读写(666)操作。 |
为了方便,把mode改为abc,其中a,b,c各为一个数字,分别表示user、group及other的权限。r=4,w=2,x=1,r表示Read读,w表示Write写,x表示eXecute。 若要rwx属性则4+2+1=7; 若要rw-属性则4+2=6; 若要r-x属性则4+1=5。
6 bash: /bin/cp: Argument list too long
bash: /bin/cp: Argument list too long 执行linux中的cp命令,当cp 的目录查过一定的数目会报Argument list too long 的警告 可以通过使用其他方式替换 如改
cp
为
find images/train2017/ -name "*.jpg" | xargs -i cp {}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~