1.ls
-a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
-r 将文件以相反次序显示(原定依英文字母次序)
-t 将文件依建立时间之先后次序列出
-A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
-F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
-R 若目录下有文件,则以下之文件亦皆依序列出
-h 以易读的方式显示文件大小(显示为 MB,GB…)
//列出根目录(\)下的所有目录:
# ls /
bin dev lib media net root srv upload www
boot etc lib64 misc opt sbin sys usr
home lost+found mnt proc selinux tmp var
2.rm
-i 删除前逐一询问确认。
-f 强制删除,即使原档案属性设为唯读,亦直接删除,无需逐一确认。
-r 将目录及以下之档案亦逐一删除。
删除文件可以直接使用rm命令,若删除目录则必须配合选项"-r"
//删除当前目录下的所有文件及目录
rm -r *
//删除任何以.log结尾的文件,删除之前逐一进行询问
rm -i *.log
3.mv
-i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;
-f: 在 mv 操作要覆盖某已有的目标文件时不给任何指示;
mv参数设置与运行结果
命令格式 | 运行结果 |
---|---|
mv 文件名 文件名 | 将源文件名改为目标文件名 |
mv 文件名 目录名 | 将文件移动到目标目录 |
mv 目录名 目录名 | 目标目录已存在,将源目录移动到目标目录;目标目录不存在则改名 |
mv 目录名 文件名 | 出错 |
4.cp
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。
5.cat
#cat主要有三大功能
#1. 一次性显示文件内容
#2. 从键盘创建一个文件或编辑已有文件
#3. 将几个文件合并为一个文件
cat -n #带行号输出
cat -b #对非空内容输出行号
6.less和more
# less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。
#常用命令参数
less -i #忽略搜索时的大小写
less -N #显示每行的行号
less <文件名> -o <文件名> #将less输出的内容在指定文件里保存起来
/字符串 #向下搜索“字符串”
?字符串 #向上搜索“字符串”
n #重复前一个搜索(与 / 或 ? 有关)
N #反向重复前一个搜索(与 / 或 ? 有关)
空格键 #滚动一页
回车键 #滚动一行
g #跳到第一行
G #跳到最后一行
q #退出less命令
j #屏幕向后移动一行 1~N -> 2~n+1 等同于 回车键功能
k #屏幕向后移动一行
less file1 file2 #查看多个文件
n #查看下一个文件
p #查看前一个文件
7.head和tail
head //head取出文件前面几行
-n :后面接数字,代表显示几行的意思
tail //tail取出文件后面几行
-n :后面接数字,代表显示几行的意思
-f :表示持续侦测后面所接的档名,要等到按下[ctrl]-c才会结束tail的侦测
tail -f -n 10 test.txt
8.find
-amin n : 在过去 n 分钟内被读取过
-atime n : 在过去n天内被读取过的文件
-cmin n : 在过去 n 分钟内被修改过
-ctime n : 在过去n天内被修改过的文件
-ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写
-name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写
-size n : 文件大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。
-type c : 文件类型是 c 的文件。
d: 目录
c: 字型装置文件
b: 区块装置文件
p: 具名贮列
f: 一般文件
l: 符号连结
s: socket
-pid n : process id 是 n 的文件
你可以使用 ( ) 将运算式分隔,并使用下列运算。
exp1 -and exp2
! expr
-not expr
exp1 -or exp2
exp1, exp2
//将目前目录及其子目录下所有延伸档名是 c 的文件列出来。
# find . -name "*.c"
//将目前目录其其下子目录中所有一般文件列出
# find . -type f
//将目前目录及其子目录下所有最近 20 天内更新过的文件列出
# find . -ctime -20
//查找home目录下的所有空文件
# find ~ -empty
//在 /usr 目录下找出大小超过 10MB 的文件
# find /usr -type f -size +10240k
9.mkdir
-p: 递归创建目录
10.scp
Linux scp 命令用于 Linux 之间复制文件和目录。
scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。
scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。
-C: 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
-p:保留原文件的修改时间,访问时间和访问权限。
-q: 不显示传输进度条。
-r: 递归复制整个目录。
-v:详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
scp local_file remote_username@remote_ip:remote_folder