ls 命令

1
2
3
4
5
6
7
ls -a #列出目录所有文件,包含以.开始的隐藏文件
ls -A #列出除.及..的其它文件
ls -r #反序排列
ls -t #以文件修改时间排序
ls -S #以文件大小排序
ls -h #以易读大小显示
ls -l #除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来

cd 命令

1
2
3
4
5
6
7
cd [目录名]

# 进入要目录
cd /

# 进入 home 目录
cd ~

pwd 命令

pwd 命令用于查看当前工作目录路径。

1
2
3
4
5
# 查看当前路径
pwd

# 查看软链接的实际路径
pwd -P

mkdir 命令

mkdir 命令用于创建文件夹。

1
2
3
4
5
-m #对新建目录设置存取权限,也可以用 chmod 命令设置;
-p #可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不在的目录,即一次可以建立多个目录。

# 在 tmp 目录下创建路径为 test/t1/t 的目录,若不存在,则创建
mkdir -p /tmp/test/t1/t

rm 命令

删除一个目录中的一个或多个文件或目录,如果没有使用 -r 选项,则 rm 不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。

1
2
3
4
5
# 删除任何 .log 文件,删除前逐一询问确认
rm -i *.log

# 删除 test 子目录及子目录中所有档案删除,并且不用逐一确认
rm -rf test

rmdir 命令

从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对其父目录的写权限。

注意:不能删除非空目录!

1
2
# 当 parent 子目录被删除后使它也成为空目录的话,则顺便一并删除
rmdir -p parent/child/child11

mv 命令

移动文件或修改文件名,根据第二参数类型(如目录,则移动文件;如为文件则重命令该文件)。

当第二个参数为目录时,第一个参数可以是多个以空格分隔的文件或目录,然后移动第一个参数指定的多个文件到第二个参数指定的目录中。

1
2
3
4
5
6
7
8
9
10
11
# 将文件 test.log 重命名为 test1.txt
mv test.log test1.txt

# 将文件 log1.txt,log2.txt,log3.txt 移动到根的 test3 目录中
mv llog1.txt log2.txt log3.txt /test3

# 将文件 file1 改名为 file2,如果 file2 已经存在,则询问是否覆盖
mv -i log1.txt log2.txt

# 移动当前文件夹下的所有文件到上一级目录
mv * ../

cp 命令

将源文件复制至目标文件,或将多个源文件复制至目标目录。

注意:命令行复制,如果目标文件已经存在会提示是否覆盖,而在 shell 脚本中,如果不加 -i 参数,则不会提示,而是直接覆盖!

1
2
3
4
5
6
7
8
9
-i #提示
-r #复制目录及目录内所有项目
-a #复制的文件与原文件时间一样

# 复制 a.txt 到 test 目录下,保持原文件时间,如果原文件存在提示是否覆盖
cp -ai a.txt test

# 为 a.txt 建立一个链接(快捷方式)
cp -s a.txt link_a.txt

其他

1
2
3
echo $LANG #查看当前使用的系统语言
locale #查看已安装的语言包
adduser <用户名> #新建用户