Linux、Unix常用命令(文件和目录相关)

楼主  收藏   举报   帖子创建时间:  2018-07-04 00:00 回复:0 关注量:112

mkdir

mkdir dirname 建立子目录. 注意:用户不能在一个不存在的目录中建立子目录。

mkdir data 在当前目录下建立子目录 data

mkdir /usr/data 在/usr/目录下建立子目录 data,此时/usr 目录必须已经存在。

rmdir

rmdir dirname 删除空目录,目录里面如有文件或目录则无法删除。

pwd

pwd 显示用户目前所在目录

cd

cd dirname 切换目录。

cd . "."表示当前目录

cd .. ".."表示上一层目录

cd / "/"表示根目录

cd ~ "~"表示宿主目录(用户登录时所在的目录)

cd /usr/bin 切换到/usr/bin 目录下

ls

ls 查看文件信息,这是最基本的档案指令。 ls 的意义为 "list",也就是将某一个目录或是某一 个档案的内容显示出来。 ls 命令可加参数很多,我们这里不一一列出,只给出较常用的几个, 各参数可以混合使用。

ls 不加任何信息,显示目前目录中所有文件。

ls

显示特定的文件。如:% ls /home2/X11R5

ls –a 显示所有的文件和目录,若无此参数,句点开始的文件和目录不会显示出来,即以”.”开头的文件,如 tcsh 的初设档 .tcshrc;如果我们要察看这类档案,则必须加上参数 -a

ls -l 这个参数代表使用 ls 的长( long )格式,可以显示更多的信息,包括文件的权限、 所有者、大小、最后更改日期等。如:

ls -l file1

-rwx--x--x 1 soft bgi Aug 8 05:08 file1

  • 第一列表示文件得属性,linux 下文件分三个属性:可读 r,可写 w,可执行 x;第一个字符表示是目录(d)或链接文件(l)或单纯的文件(-)等;第 2-4 字符”rwx” 表示此文件属主 soft 对文件 file1 的权利为”可读、可写、可执行”; 第 5-7 字符”r-x” 表示此用户组 bgi 内的用户对文件 file1 的权利为:”可读、不可写、可执行”;第 8-10 字符”r--” 表示其他用户对文件 file1 的权利为”可读、不可写、不可执行”
  • 第二列表示文件个数,如果是文件则为 1,如果是目录则表示里面的文件个数。
  • 第三列别是此文件或目录的拥有者。
  • 第四列表示文件所有者所属的组
  • 第五列表示文件大小,用 byte 表示
  • 第六列表示文件的修改日期
  • 第七列表示文件或目录名称

ls –t 按文件最后更改时间排序文件

ls –F 在文件后面加上类型标识:如果是目录,则在后面加”/”,如果是可执行文件,则在 后面加”*”,如果是个链接,则在后面加”@”

more

more

显示文件,按屏显示,空格键翻页,回车键每次只翻一行,敲入 q/Q/:q/:Q/ZZ等都可提前退出 more 命令

less

less

基本同 more 命令,可以使用方向键随意滚动文件。

less –S 分列显示

less –help 显示详细说明文档

cat

cat

显示文件内容,所有内容全部显示。

cat –n

在显示内容前加上行号

cp

cp 拷贝文件可以将文件拷贝成另一个文件,或是拷贝到另一个目录中。可以使用通配符拷贝 具有同一特征的所有文件。

cp file1 file2 将 file1 拷贝成 file2

cp /usr/file2 ./ 将/usr 目录下的文件 file2 拷到当前目录下

cp –i 覆盖相同名称文件前先询问用户

cp –R 递归拷贝,即拷贝时将所有目录一并拷贝

cp --help 查阅命令详细使用信息

mv

mv 移走目录或者改文件名

mv file1 file2 将 file1 改名为 file2

mv filename dirname/ 将文件移至某一目录下

mv –help 查阅命令详细使用信息

rm

rm 删除文件或目录

rm file1 file2 file3 ….

rm * 删除当前目录下所有文件

rm –f 强制删除文件,删除时,不提出任何警告讯息。

rm –i 删除文件之前均会询问是否真要删除,y/n 指示下一步。

rm –r 递回式的删除,即逐级删除目录下的子目录。

rm –help 查阅命令详细使用信息

chmod

chmod 更改文件或目录权限

chmod –r file 更改所有的权限,包括子目录及其内文件。

chmod nnn file(s) n 从 0 到 7,权限可相加。依次代表用户、组成员、其他人的权限。

0 无任何权限

1 可执行权限

2 可写权限

4 可读权限

chmod a operator b file(s) a 代表用户 u、组 g 或其他 o,operator 代表+-=:权限的更改 方式,b 代表权限类型:r 可读 w 可写 x 可执行

chmod g+rw file 增加文件组内可读写的权限

chmod o=rx file 更改文件的权限,使其他用户可读可执行

chown

chown 更改文件或目录所有者,自己不能再改回来。

chown UID:GID files

grep

grep 是一过滤器,它可搜索文件并过滤出有某个特征的行

grep [-nv] match_pattern file1 file2 ....

-n 把所找到的行在行前加上行号列出

-v 把不包含 match_pattern 的行列出

ln

ln [-参数] [源文件或目录][目标文件或目录],指令用在链接文件或目录。

连结又可分为两种: 硬连结(hard link)与软连结(symbolic link),硬连结的意思是一个文件可以有多个名称,而软 连结的方式则是产生一个特殊的文件,该文件的内容是指向另一个文件的位置。硬连结是存在同 一个文件系统中,而软连结却可以跨越不同的文件系统。常用的参数如下:

-b 删除,覆盖目标文件之前的备份。

-d或-F 建立目录的硬连接。

-s 对源文件建立符号连接,而非硬连接。

-f 强行建立文件或目录的连接,不论文件或目录是否存在。

-i 覆盖既有文件之前先询问用户。

split

split [OPTION] [INPUT [PREFIX]] 将一个文件分割成数个,输出依次为 PREFIXaa, PREFIXab…… PREFIX 默认为 x。

-b, --bytes=SIZE SIZE 值为每一输出档案的大小,单位为 byte。SIZE 可加入单位: b 代 表 512, k 代表 1K, m 代表 1 Meg。

-l NUMBER NUMBER 值为每一输出文件的行数。

cut

cut 截取文件中的某字段。

-c m-n 表示显示每一行的第 m 个字元到第 n 个字元。

-f m-n 表示显示第 m 栏到第 n 栏(使用 tab 分隔)。

-d’分隔符’ 用来定义分隔符(单个字符),默认为 tab 键,和-f 配合使用。

sort

sort 命令的功能是对文件中的各行进行排序,默认为以整行为关键字按 ASCII 字符顺序进行排 序。

-u 对排序后认为相同的行只留其中一行。

-f 将小写字母与大写字母同等对待。

-r 按逆序输出排序结果。

uniq 处理文件中重复的行

-d 只显示重复行。

-u 只显示文件中不重复的各行。

find

find 查找文件

基本用法 find [路径] [参数],可以使用 find –help 查看详细说明。

find bin/ -name run.sh 查找 bin 目录下名字为 run.sh 的文件

-amin n 查找系统中最后 n 分钟访问的文件

-atime n 查找系统中最后 n 天访问的文件

-cmin n 查找系统中最后 n 分钟被改变状态的文件

-ctime n 查找系统中最后 n 天被改变状态的文件

-empty 查找系统中空白的文件,或空白的文件目录

wc

wc 该命令用来统计给定文件中的字节数、字数、行数。

-c 统计字节数。

-l 统计行数。

-w统计字数。

du

du [options]

统计文件大小

-s 所有文件大小总和

-k 以 kbytes 为单位输出

awk

awk 对文件进行信息提取等处理,基本模式为:awk ‘{操作代码}’ 输入文件

$ awk '{ print }' /etc/passwd 此命令输出/etc/passwd 文件的内容。/etc/passwd 为输入 文件。花括号用于将几块代码组合到一起,这一点类似于 C 语言。

$ awk -F:":" ’{ print $1 }’ /etc/passwd 使用 -F 选项来指定 ":" 作为字段分隔符, 打印出在输入文件中每一行中出现的第一个字段。

gzip

gzip (gunzip) 压缩(解压缩)文件,产生后缀为.gz 的压缩文件。

gzip –d file 解压缩文件

gzip –f file 如果压缩的文件重名,则强制覆盖

gzip –h 显示此命令的帮助信息

zip

zip 压缩文件

unzip 解压缩文件,该命令用于解扩展名为.zip的压缩文件。

-t 检测压缩的档案文件

-d 解压缩文件到 exdir

tar

tar 打包多个文件到一个压缩包或反之

tar –cf bin.tar /usr/bin 将/usr/bin 目录下所有文件打包成 bin.tar

tar –xf bin.tar 解压提取 bin.tar 包里所有文件

tar –tvf bin.tar 给出 bin 包里的文件列表,并不解压缩

tar –help 显示此命令的帮助信息

compress

compress 压缩文件,压缩后的文件会加上一个.Z后缀以区别未压缩的文件,可以用uncompress 解压缩或使用参数-d 解压缩

man

man [命令] man 是手册 ( manual ) 的意思。用来让使用者查询某一命令的具体使用帮助。

Ctrl+f 或空格键 后翻一页

Ctrl+b 或 b 前翻一页

Ctrl+c 或 q 离开 重定向,可将某命令的结果输出到文件中

输出重定向

>file 将结果输出到文件 file 中,如果该文件原本就存在,则该文件原有的内容会被删除

>>file 将结果输出到文件 file 中,如果原文件存在,则附加在原文件后面,原文件的内容 不会被清除

管道符

管道符 |,可将某命令的结果输出给另一命令

su

su 更改为其他用户,默认为 su 到 root,会提示输入另一用户的密码

su – user 更改为其他用户并使用其环境变量设置

passwd

passwd 更改用户密码,会提示输入旧密码,并两次输入新密码以确认

top

top 即时显示进程动态,进入 top 命令后可以使用如下几个命令进行操作:

h:显示帮助信息 q:离开此命令 s:更新速度,每几秒更新一次,也可使用空格键手动更新。 n:只显示最上面运行的几个进程

i: 不显示任何闲置 (idle) 或无用 (zombie) 的行程

u:单独显示某一用户的进程,“+”为显示所有用户的进程

history

history 查询历史命令记录

history number 显示前面几个命令

history –c 从下一个命令开始记录

history –h 只显示命令历史记录,不显示命令编号、时间等信息

History –r 反向显示命令的历史纪录,即从最近的一个命令开始显示

ps

ps 显示用户的运行程序或系统程序

ps –e 列出所有用户的进程

ps –u [user] 列出用户 user 的进程

ps –f 给出详细列表

kill

kill 杀掉某一进程

kill [-signal] pid signal 为 0 到 31 的数字,也可以是特定字符串。如数字 9 代表 KILL, 可以杀掉一般无法终止的程序。

kill –l 查看 signal 代表的意思。常用的 signal 有 HUP、STOP、CONT 等。