Shell中的常用命令

1. 认识 Shell

首次登录 Ubuntu 并打开 Shell,我们将处于用户目录,你将看到 Shell 中显示 user@machine:~$,其中 @ 前面的内容代表用户名,@ 后面的内容代表计算机名,$ 代表身份为用户,如果为 # 则代表身份为管理员,~ 代表当前正处于用户目录,如果处于其他目录,将显示相应目录路径。
在这里插入图片描述

2. 常用命令

2.1 浏览类

2.1.1 pwd (print working directory)

用户当前所处的目录被称为工作目录,pwd 命令的作用是显示从根目录到当前工作目录的路径,用法为 pwd

2.1.2 cd (change directory)

cd 命令的作用是切换工作目录,可以使用绝对路径和相对路径两种方式。绝对路径,是指从根目录开始到目标目录。相对路径,是指从当前工作目录开始到目标目录,. 代表当前目录,.. 代表上一目录,. 通常也可以省略。常见用法如下:

命令结果
cd ..使用相对路径切换到父目录。
cd ./bincd /bin使用相对路径切换到当前目录的子目录 bin。
cd /usr/bin使用绝对路径切换到 bin 目录。
cdcd ~切换到当前用户目录。
cd ~username切换到指定用户目录。
cd /切换到根目录。
cd -回到上一次所在目录。

2.1.3 ls (list)

ls 命令的作用是列出目录下的内容,常见用法如下:

命令结果
ls列出当前目录的内容。
/bin列出子目录 bin 的内容。
ls -l以长格式列出当前目录的内容。
ls -l /etc /bin以长格式同时列出子目录 etc 和 bin 的内容。
ls -la以长格式列出当前目录的所以内容,包括文件名以 . 开头的隐藏文件。

2.1.4 less

less 命令的作用是查看文本文件,用法为 less text_file,执行命令后,将显示文本文件的内容,我们可以通过输入命令进行浏览,常用命令如下:

命令行为
向上滚动
向下滚动
q退出

2.1.5 file

file 命令的作用是查看文件类型,用法为 file filename,常见文件类型如下:

类型描述
ASCII text文本
Bourne-Again shell script textBash 脚本
ELF 64-bit LSB execuable可执行程序
ELF 64-bit LSB shared object共享库
HTML document textHTML
JPEG image dataJPEG 格式的图片
Zip archive dataZip 格式的压缩包

2.2 操作类

2.2.1 cp (copy)

cp 命令用来拷贝文件和目录,常见用法如下:

命令结果理解
cp file1 file2拷贝 file1。如果 file2 存在,则无任何提示重写 file2。拷贝文件
cp -i file1 file2结果和上面一样。-i (interactive) 表示交互,重写时,发出提示。拷贝文件
cp file1 dir1拷贝 file1 到 dir1 中。如果目录不存在,将转变为用法一。拷贝文件到目录
cp -r dir1 dir2如果 dir2 不存在,拷贝 dir2。
如果 dir2 存在,拷贝 dir1 到 dir2 中。
-r (recursive) 表示递归,用于对目录进行操作。
拷贝目录
拷贝目录到目录

2.2.2 mv (move)

mv 命令用来移动或重命名文件和目录,常见用法如下:

命令结果理解
mv file1 file2重命名 file1。如果 file2 存在,则无任何提示替换 file2,只剩一个文件。重命名文件
mv -i file1 file2结果和上面一样。-i (interactive) 表示交互,替换时,发出提示。重命名文件
mv file1 file2 dir1移动 file1 和 file2 到 dir1 中。如果目录不在,则报错。移动文件
mv dir1 dir2如果 dir2 不存在,重命名 dir1。
如果 dir2 存在,移动 dir1 到 dir2 中。
重命名目录
移动目录

2.2.3 rm(remove)

rm 命令用来删除文件和目录,常见用法如下:

命令结果理解
rm file1 file2删除 file1 和 file2。删除文件
rm -i file1 file2结果和上面一样。-i (interactive) 表示交互,删除时,发出提示。删除文件
rm -r dir1 dir2删除 dir1 和 dir2。-r (recursive) 表示递归,用于对目录进行操作。删除目录

!!!建议谨慎使用 rm 命令,尤其是和通配符一起使用时。Linux 无法撤销删除,在和通配符一起使用时,建议先用 ls 命令查看选中的文件,确认后再使用 rm 命令进行删除。

2.3 创建类

2.3.1 mkdir(make directory)

mkdir 命令用来创建目录,用法为 mkdir directory

2.4 帮助类

2.4.1 type

type 命令用来查看命令的类型,用法为 type command

2.4.2 which

which 命令用来查看可执行程序的位置,用法为 which program

2.4.3 help

help 命令用来查看 Shell 内置命令的帮助文档,用法为 help builtin
–help 参数用来查看可执行程序的帮助文档,用法为 program --help。有些可执行程序可能没有此参数,但是如果报错,它一般会提示你如何查看帮助文档。

2.4.4 man

man 命令用来查看可执行程序的帮助文档,用法为 man program

3. 长格式 (long formate)

一图读懂长格式。

  • 文件名:文件的名称。
  • 修改日期:该文件的最后修改日期,日期大于6个月时显示年份。
  • 文件大小:文件所占的内存空间,以字节 (byte) 为单位。
  • 拥有组:拥有该文件的用户组。
  • 拥有者:拥有该文件的用户。
  • 硬链接数:对于文件,硬链接数为1;对于目录,硬链接数为子目录的数量加上该目录本身的硬链接数(...)。
  • 权限:总共有10位,分为四组,1位为第一组,2-4位为第二组,5-7位为第三组,8-10位为第四组。第一组 d 代表目录,- 代表文件;第二组的三位分别表示拥有者对该文件的读 r、写 w 和执行 x 权限,第三组和第四组以此类推,分别表示组内用户和所有用户对该文件的权限。
  • 目录大小:该目录所占的内存空间,以块为单位,一块的大小为 1KB
    在这里插入图片描述

4. 通配符(wildcard)

通配符可以让我们按照某种文件名规则批量选择文件,常见的通配符及其含义如下:

通配符含义
*任意长度字符。
?任意一个字符。
[characters]包含中括号内的任意一个字符。
除了在中括号内直接写出字符外,也可以使用预设字符集。
[:alnum:] 字母和数字
[:alpha:] 字母
[:digit:] 数字
[:upper:] 大写字母
[:lower:] 小写字母
[!characters]不包含中括号内的任意一个字符,其他用法同上。

我们可以在任意一个命令的文件名参数中使用通配符,常见用法如下:

规则含义
*选择全部文件。
g*选择以 g 开头的文件。
b*.txt选择以 b 开头,以 .txt 结尾的文件。
Data???选择以 Data 开头,后跟任意三个字符的文件。
[abc]*选择以 a 或 b 或 c 开头的文件。
[[:upper:]]*选择以任意一个大小字母开头的文件。
BACKUP.[[:digit:]][[:digit:]]选择以 BACKUP. 开头,以任意两个数字结尾的文件。
*[![:lower:]]选择不以任意小写字母结尾的文件。

5. 命令类型

Linux 包含 4 种类型的命令,如下:

  • 可执行程序:由 C/C++ 等高级语言编译后生成的二进制可执行程序。
  • Shell 内置命令(bulitin):Shell 本身内置的一些命令。
  • Shell 函数:集成在 Shell 环境中的 Shell 脚本。
  • 别名命令:由用户通过已有命令构建的别名命令。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

vjsopmh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值