linux常用shell命令面试,linux/shell脚本常用的20个命令(高频面试题系列)

1. ls命令

ls命令:列出目录内容(List Directory Contents)的意思。运行它就是列出文件夹里的内容,所列出的内容可能是文件也可能是文件夹。

“ls -l”命令:以详情模式(long listing fashion)列出文件夹的内容。

“ls -a”命令:会列出文件夹里的所有内容,包括以”.”开头的隐藏文件。

2. lsblk命令

“lsblk”命令:列出块设备。除了RAM外,以标准的树状输出格式,整齐地显示块设备。

“lsblk -l”命令:以列表格式显示块设备(而不是树状格式)。

注意:lsblk是最有用和最简单的方式来了解新插入的USB设备的名字,特别是当你在终端上处理磁盘/块设备时。

3. md5sum命令

“md5sum”命令:计算和检验MD5信息签名。

md5 checksum(通常叫做哈希)使用匹配或者验证文件的文件的完整性,因为文件可能因为传输错误,磁盘错误或者无恶意的干扰等原因而发生改变。

注意:用户可以使用官方提供的和md5sum生成签名信息匹对以此检测文件是否改变。Md5sum没有sha1sum安全,这点我们稍后讨论。

4. dd命令

“dd”命令:转换和复制文件。大多数时间是用来复制iso文件(或任何其它文件)到一个usb设备(或任何其它地方)中去,所以可以用来制作USB启动器。

5. uname命令

“uname”命令就是Unix Name的简写。显示机器名,操作系统和内核的详细信息。

6. history命令

“history”命令:显示在终端中所执行过的所有命令的历史。

注意:按住“CTRL + R”就可以搜索已经执行过的命令,它可以你写命令时自动补全。

7. sudo命令

“sudo”(super user do)命令:允许授权用户执行超级用户或者其它用户的命令。通过在sudoers列表的安全策略来指定。

注意:sudo 允许用户借用超级用户的权限,然而”su”命令实际上是允许用户以超级用户登录。所以sudo比su更安全。

8. mkdir命令

“mkdir”(Make directory)命令:在命名路径下创建新的目录。然而如果目录已经存在了,那么它就会返回一个错误信息”不能创建文件夹,文件夹已经存在了”。(“cannot create folder, folder already exists”)

注意:目录只能在用户拥有写权限的目录下才能创建。mkdir:不能创建目录tecmint,因为文件已经存在了。(上面的输出中不要被文件迷惑了,你应该记住我开头所说的-在linux中,文件,文件夹,驱动,命令,脚本都视为文件)

9. touch 命令

“touch”命令代表了将文件的访问和修改时间更新为当前时间。touch命令只会在文件不存在的时候才会创建它。如果文件已经存在了,它会更新时间戳,但是并不会改变文件的内容。

例:root@tecmint:~# touch filename

注意:touch 可以用来在用户拥有写权限的目录下创建不存在的文件。

10. chmod 命令

“chmod”命令就是改变文件的模式位。chmod会根据要求的模式来改变每个所给的文件,文件夹,脚本等等的文件模式(权限)。

在文件中存在三种类型的权限:

Read(r)=4

Write(w)=2

Execute(x)=1

所以如果你想给文件只读权限,就设置为‘4’;只写权限,设置为‘2’;只执行权限,设置为‘1’; 读写权限,就是4+2 = 6, 以此类推。

注意:对于系统管理员和用户来说,这个命令是最有用的命令之一了。在多用户环境或者服务器上,对于某个用户,如果设置了文件不可访问,那么这个命令就可以解决,如果设置了错误的权限,那么也就提供了为授权的访问。

11. chown命令

“chown”命令就是改变文件拥有者和所在用户组。每个文件都属于一个用户组和一个用户。在你的目录下,使用”ls -l”,你就会看到像这样的东西。

注意:“chown”所给的文件改变用户和组的所有权到新的拥有者或者已经存在的用户或者用户组。

12. cal 命令

“cal”(Calender),它用来显示当前月份或者未来或者过去任何年份中的月份。

显示当前月份:

root@tecmint:~# cal

显示已经过去的月份,如1888年2月:

root@tecmint:~# cal 02 1888

显示未来的月份,如21111年1月:

root@tecmint:~# cal 01 2111

注意: 你不需要往回调整日历50年,既不用复杂的数据计算你出生那天,也不用计算你的生日在哪天到来,因为它的最小单位是月,而不是日。

13. grep命令

“grep”命令:搜索指定文件中包含给定字符串或者单词的行。举例搜索‘/etc/passwd‘文件中的‘tecmint’:

root@tecmint:~# grep tecmint /etc/passwd

使用’-i’选项将忽略大小写:

root@tecmint:~# grep -i TECMINT /etc/passwd

使用’-r’选项递归搜索所有自目录下包含字符串 “127.0.0.1“.的行:

root@tecmint:~# grep -r "127.0.0.1" /etc/

注意:您还可以使用以下选项:

1 :-w搜索单词 (egrep -w ‘word1|word2‘ /path/to/file).

2: -c用于统计满足要求的行  (grep -c ‘word‘ /path/to/file).

3 :–color彩色输出 (grep –color server /etc/passwd).

14. 命令: echo

echo  的功能正如其名,就是基于标准输出打印一段文本。它和shell无关,shell也不读取通过echo命令打印出的内容。然而在一种交互式脚本中,echo通过终端将信息传递给用户。它是在脚本语言和交互式脚本语言中经常用到的命令。

15. date命令

“date”命令使用标准的输出打印当前的日期和时间,也可以深入设置。

注意:这个命令在脚本中十分有用,。而且在终端中改变日期和时间,让你更专业!!!(当然你需要root权限才能操作这个,因为它是系统整体改变)

16. cat命令

“cat”代表了连结(Concatenation),连接两个或者更多文本文件或者以标准输出形式打印文件的内容。

此命令另起章节详细讲解。

17. cp 命令

“copy”就是复制。它会从一个地方复制一个文件到另外一个地方。

root@tecmint:~# cp /home/user/Downloads abc.tar.gz /home/user/Desktop (Return 0 when sucess)

注意:cp,在shell脚本中是最常用的一个命令,而且它可以使用通配符(在前面一块中有所描述),来定制所需的文件的复制。

18. mv 命令

“mv”命令将一个地方的文件移动到另外一个地方去。

root@tecmint:~# mv /home/user/Downloads abc.tar.gz /home/user/Desktop (Return 0 when sucess)

注意:mv 命令可以使用通配符。mv需谨慎使用,因为易懂系统的或者未授权的文件不但会导致安全性问题,而且可能系统崩溃。

19. pwd 命令

“pwd”(print working directory),在终端中显示当前工作目录的全路径。

注意: 这个命令并不会在脚本中经常使用,但是对于新手,当从连接到nux很久后在终端中迷失了路径,这绝对是救命稻草。

20. cd 命令

最后,经常使用的“cd”命令代表了改变目录。它在终端中改变工作目录来执行,复制,移动,读,写等等操作。

注意: 在终端中切换目录时,cd就大显身手了。

“cd ~”会改变工作目录为用户的家目录,而且当用户发现自己在终端中迷失了路径时,非常有用。

“cd ..”从当前工作目录切换到(当前工作目录的)父目录。

针对性刷题请点击阅读原文。

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值