Linux学习 - 命令
目录操作命令
ls 命令
Linux ls(英文全拼:list files)命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录)。
语法
ls [-alrtAFR] [--color] [路径]
参数
- -a 显示所有文件及目录 (. 开头的隐藏文件也会列出)
- -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
- -r 将文件以相反次序显示(原定依英文字母次序)
- -t 将文件依建立时间之先后次序列出
- -A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
- -F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
- -R 若目录下有文件,则以下之文件亦皆依序列出
- --color:在显示文件名时使用不同的颜色指示不同类型的文件
键入
ls -l
命令以表格格式列出目录的内容,其列包括:
- 内容权限
- 内容链接数
- 内容的所有者
- 内容组的所有者
- 内容大小(以字节为单位)
- 内容的最后修改日期/时间
- 文件或目录名称
zhaoxl@ubuntu:~/2022$ ls -l -rwxr-xr-x 1 zhaoxl student 8720 9月 14 21:31 p10 -rw-r--r-- 1 zhaoxl student 322 9月 14 21:31 p10.c -rwxr-xr-x 1 zhaoxl student 8752 9月 14 21:47 p11 -rw-r--r-- 1 zhaoxl student 399 9月 14 21:46 p11.c
pwd 命令
Linux pwd(英文全拼:print work directory) 命令用于显示工作目录。
执行 pwd 指令可立刻得知您目前所在的工作目录的绝对路径名称。
语法
pwd [--help][--version]
参数说明:
- --help 在线帮助。
- --version 显示版本信息。
cd 命令
/tmp
:临时目录,用于临时存放文件的地方,任何用户都可以在该目录中存放文件,但只能删除自己存放的文件
语法
cd [dirName]
- dirName:要切换的目标目录。
mkdir 命令
Linux mkdir(英文全拼:make directory)命令用于创建目录。
语法
mkdir [-p] dirName
参数说明:
- -p 确保目录名称存在,不存在的就建一个。
文件操作命令
touch 命令
Linux touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。
语法
touch [-acfm][-d<日期时间>][-r<参考文件或目录>] [-t<日期时间>][--help][--version][文件或目录…]
- 参数说明:
- a 改变档案的读取时间记录。
- m 改变档案的修改时间记录。
- c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。
- f 不使用,是为了与其他 unix 系统的相容性而保留。
- r 使用参考档的时间记录,与 --file 的效果一样。
- d 设定时间与日期,可以使用各种不同的格式。
- t 设定档案的时间记录,格式与 date 指令相同。
- --no-create 不会建立新档案。
- --help 列出指令格式。
- --version 列出版本讯息。
cp 命令
Linux cp(英文全拼:copy file)命令主要用于复制文件或目录。
语法
cp [options] source dest
或
cp [options] source... directory
参数说明:
- -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
- -d:复制时保留链接。这里所说的链接相当于 Windows 系统中的快捷方式。
- -f:覆盖已经存在的目标文件而不给出提示。
- -i:与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 y 时目标文件将被覆盖。
- -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
- -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
- -l:不复制文件,只是生成链接文件。
mv命令
Linux mv(英文全拼:move file)命令用来为文件或目录改名、或将文件或目录移入其它位置。
语法
mv [options] source dest #更名
mv [options] source... directory #移动
参数说明:
- -b: 当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份。
- -i: 如果指定移动的源目录或文件与目标的目录或文件同名,则会先询问是否覆盖旧文件,输入 y 表示直接覆盖,输入 n 表示取消该操作。
- -f: 如果指定移动的源目录或文件与目标的目录或文件同名,不会询问,直接覆盖旧文件。
- -n: 不要覆盖任何已存在的文件或目录。
- -u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。
mv 参数设置与运行结果
命令格式 | 运行结果 |
---|---|
mv source_file(文件) dest_file(文件) |
将源文件名 source_file 改为目标文件名 dest_file |
mv source_file(文件) dest_directory(目录) |
将文件 source_file 移动到目标目录 dest_directory 中 |
mv source_directory(目录) dest_directory(目录) |
目录名 dest_directory 已存在,将 source_directory 移动到目录名 dest_directory 中;目录名 dest_directory 不存在则 source_directory 改名为目录名 dest_directory |
mv source_directory(目录) dest_file(文件) |
出错 |
显示文件内容及搜索
文件内容显示
下面四个命令针对文本文件,想知道文件是否为文本文件,可以使用file命令检测文件类型
file 文件名
-
cat 文件列表(会把内容直接全部显示)
-
less 文件列表(会从头开始显示,可以翻页,搜索等)
-
tail 文件列表(默认只显示尾部的10行文字,可以设置显示行数)
-
head 文件列表(默认只显示首位的10行文字,可以设置显示行数)
tail -数字 (显示尾部【数字】行)
head -数字(显示首位【数字】行)
如:
tail -8
如:head -20
文件内容筛选(grep)
语法
grep “正则表达式” 文件名列表
按照指定的正则表达式在指定的文件中搜索匹配到的行,并输出。
统计命令(wc)
Linux wc命令用于计算字数。
利用wc指令我们可以计算文件的Byte数、字数、或是列数,若不指定文件名称、或是所给予的文件名为"-",则wc指令会从标准输入设备读取数据。
语法
wc [-clw][--help][--version][文件...]
参数:
- -c或--bytes或--chars 只显示Bytes数。
- -l或--lines 显示行数。
- -w或--words 只显示字数。
- --help 在线帮助。
- --version 显示版本信息。
管道和输出重定向
管道
- 命令1 | 命令2 [| 命令3 ......]
- 功能:将前一个命令的输出结果交给后一个命令
输出重定向
- 命令
>/>>
文件名 - 将命令的输出保存到文件中,而不是显示在屏幕上
错误重定向
- 命令
2>/2>>
文件名
0 标准输出 1 标准输入 2 标准错误
文件归档与压缩
压缩文件
gzip/bzip2 文件列表
对指定文件近压缩
gunzip/bunzip2 压缩文件列表
对指定压缩文件进行解压
归档
文件进行归档或抽取归档中的文件。默认tar不能对文件进行压缩。
语法
tar [z/j][c/x/t/u][v]f 归档文件 [待归档文件列表]
参数
-
z 通过gzip进行压缩
-
j 通过bzip2进行压缩
-
c 创建一个归档
-
x 抽取归档中的文件
-
t 打印归档中的文件列表
-
u 更新归档包中的文件
-
v 输出冗余信息
-
f 指定归档文件
符号链接
符号链接也称为软连接,是一个特殊文件。其文件内容保存的是指向目标文件的路径,对其的很多操作将直接作用于目标文件。符号连接通过ln命令创建
注:符号连接可以对任何文件创建,甚至不存在的文件。符号链接文件中保存的路径便是命令中书写的源路径。
语法
ln -s 源路径 符号链接文件