<目录切换>
cd 目录名称
cd ~
cd ..
cd -
<用户切换>
su - [user]
<删除文件或目录>
rm -f 文件名称
rm -rf 目录名称
rm -rf !(文件名称1|文件名称2) (PS:删除除文件12以外的其它文件)
find . -name *.o | xargs rm -f (PS:删除当前目录下以.O结尾的所有文件)
<拷贝文件或目录>
cp 原文件名称 新文件名称
cp -rf 原目录名称 新目录名称
scp root@172.31.112.118:/home/trade/test .
<文件展示>
ls
ls -l 和 ll 显示的信息一致
ls -a (PS:显示隐藏文件)
ls -lh (PS:以易读方式列出文件)
ls -r (PS:倒序方式显示)
ls -R (PS:递归列出子目录)
ks -ltr (PS:以修改时间倒序列出)
ls -lS (PS:l为小写,S为大写;按文件大小排序)
ls -i (PS:显示文件或目录的索引节点号)
ls --version (PS:显示ls命令的版本)
ls --help (PS:显示帮助页面)
ls -l /tmp (PS:列出目录信息)
ls -n (PS:显示文件的UID和GID)
alias ls="ls -l" (PS:ls命令和它的别名),可以通过alias命令显示可以用的所有别名;也可以用unalias来取消eg:unalias ls
<改变角色>
chmod [u/g/o][+/-][r/x/w] 文件名称
chmod 777 文件名称
chown -R 用户组.用户 文件目录
<文件查找>
find /etc -size +1M -exec echo {} \; #在/etc目录下找文件大小在1M以上的文件并且显示,文件用换行符隔开。 -exec后面的{} \;是不能少的。
find /etc -size +1M | xargs echo
#达到-exec相同的功能但是用空格分开寻找到的文件。
find ./ -user 用户名
#find后面接的是开始寻找路径名,它会在这个路径下递归寻找。
find ./ -not -user 用户名
find ./ -not -name 文件名
find ./ -not -type 类型(一般文件f,目录d,字符文件c)
find ./ -user 用户名 -o -type f
#寻找当前目录下用户你指定用户文件或者(-o)一般文件。
find ./ -size +1M -o -type d
#寻找当前目录下文件大于1M的文件或者是目录。
find ./ -size -1M -a -type f
#寻找当前目录下文件小于1M并且文件类型是一般文件的文件。
find . -type f | wc -l
-o 是或者的意思
-a 是而且的意思
-not 是相反的意思
根据上面再从find的寻找方式中任意组合你乐意的方式。
find /etc -not -perm mode(
222
)
find /etc -not -perm -mode(-
222
)
find /etc -not -perm +mode(+
222
)
#-perm是按文件权限来查找文件
mode是完全匹配所对应的权限,如果不包括suid/sgid/sticky
-mode是权限位转化为二进制之后的
1
必须全部匹配,+mode则需要其中任何一个
1
被匹配。
-mode应该包含mode,+mode则包含-mode。
<压缩与解压>tar命令
解包:tar zxvf FileName.tar
打包:tar czvf FileName.tar DirName
压缩多个文件:tar czvf FileName.tar DirName1 DirName2 DirName3 ...
tar [-cxtzjvfpPN] 文件与目录 ....
参数:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!
因为不可能同时压缩与解压缩。
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成
『 tar -zcvPf tfile sfile』才对喔!
-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径来压缩!
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!
--exclude FILE:在压缩的过程中,不要将 FILE 打包!
范例:
范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar
[root@linux ~]# tar -cvf /tmp/etc.tar /etc<==仅打包,不压缩!
[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc<==打包后,以 gzip 压缩
[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc<==打包后,以 bzip2 压缩
# 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。
# 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~
# 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~