Ubuntu 学习总结
1、Shell命令的基本格式
通常Shell命令提示符采用以下的格式:
username@hostname:direction$
用户名 主机名 目录名
username:用户名,显示当前登录用户的账户名。
hostname:主机名,显示登录的主机名,例如若远程登录后,显示登录的主机名。
direction: 目录名,显示当前所处的路径,在根目录下显示为“/",在用户主目录下显示为”~“。例如,当前Shell提示符为”wdl@UbuntuFisher:~Examples$",用户名 为"wdl", 主机名为“UbuntuFisher”,目录名为“~Examples”,即用户主目录下的/Examples目录。
2、命令格式:
通常一条命令包含3个要素:命令名称、选项、参数。命令名称是必须的,选项和参数都可能是可选项。命令格式如下所示:
$ Command [-Options] Argument1 Argument2...
指令 选项 参数1 参数2 ...
$:Shell 提示符,如果当前用户为超级用户,提示符为“#”,其他用户提示符均为“$"。
Command:命令名称,Shell命令或程序,严格区分大小写,例如摄者日期指令为Date等。
Options:命令选项,用于改变命令执行动作的类型,由”—”引导,可以同时带有多个选项。
Argument: 命令参数,指出命令作用的对象或目标,有的命令允许带多个参数。
一条命令的3个要素之间用空格隔开;若将多个命令在一行书写,用分好(;)将命令隔开;如果一条命令不能再一行写完,在行尾使用反斜杠(\)标明该命令未结束。
3、在输入命令或文件名的几个字符后,按 TAB 键或Esc键能自动补齐剩余没有输入的字符串。如果村子多个命令或文件有相同前缀,shell将列出所有相同前缀的命令或文件, 作为提示信息,帮助用户回忆和完成输入。
需要说明的是,连续两下TAB键或Esc键,用于命令补齐,按下一次TAB键,用于文件名补齐。
4、查询命令历史。
按上下键便可逐条追溯曾经使用过的命令。Bash Shell 还提供了history命令。改命令的一般格式:history【numberline】
history命令在没有任何参数情况下,默认一次性输出所有历史命令。使用numberline选项,意为从末尾开始的几条历史命令。
Bash Shell 将历史命令容量保存在环境变量HISTSIZE中,使用“echo $HISTSIZE"命令可以查看当前历史命令容量,也通过直接赋值的方法,改变这个环境变量。
5、定义命令别名
alias 【alias-name=‘original-command‘】
其中alias-name为用户给命令的指定的别名,original-command为原来的命令。
alias命令在不带任何参数情况下,默认列出当前已定义的别名。如果打算取消摸个别名,可以使用unalias命令:unalias alias-name
6、通配符:
当需要用命令处理一组文件,例如:file1.txt、file2.txt、file3.txt.....,用户不必一一输入文件名,可以使用Shell通配符。Shell命令的统配符含义:
通配符 | 含义 | 实例 |
星号(*) | 匹配任意长度的字符串 | 用file_*.txt,匹配file_wang.txt、file_Lee.txt、file3_Liu.txt |
问号(?) | 匹配一个长度的字符 | 用file_?.txt,匹配file_1.txt、file1_2.txt、file3_.txt |
方括号[...] | 匹配其中指定的一个字符 | 用file_[otr].txt,匹配file_o.txt、file_r.txt和file_t.txt |
方括号[-] | 匹配指定的一个字符范围 | 用file_[a-z].txt,匹配file_a.txt、file_b.txt,直到file_z.txt |
方括号[^...] | 除了其中指定的字符,均可匹配 | 用file_[^otr].txt,除了file_o.txt、file_r.txt和file_t.txt的其他文件 |
使用举例: ls file_*.txt 使用ls命令查看以"file_"为前缀的所有文件
ls file_?.txt 使用ls命令查看以"file_"为前缀,并由1~9数字标识的文件,以匹配单个字符。
ls file_[1-5].txt
ls_file[^245].txt
7、管道
管道可以把一系列命令连接起来,意味着第一个命令的输出将作为第二个命令的输入,通过管道传递给第二个命令,第二个命令的输出又将作为第三个命令的输入,以此类推。 就像通过使用"|"符连成一个管道。
例如: ls /user/bin | wc -w
ls 命令用于查看/user/bin 目录下的文件,”wc -w”命令统计指定文件的单词数。以上操作中借助管道“|”,将ls的输出直接作为wc命令的输入。
8、输入/输出重定向
输入/输出重定向是改变Shell命令或程序默认的标准输入/输出目标,重定向到新的目标。Linux中默认的标准输入定义为键盘,标准输出定义为终端窗口。用户可以为当前操作 改变输入或输出,迫使摸个特定命令的输入或输出来源为外部文件。Shell命令的重定向含义表:
重定向符 | 含义 | 实例 |
>file | 将file文件重定向为输出源,新建模式 | ls/usr>Lsoutput.txt,将ls/usr的执行结果,写到Lsoutput.txt文件中,若有通名文件将被删除 |
>>file | 将file文件重定向为输出源,追加模式 | ls/usr >> Lsoutput.txt,将ls/usr的执行结果,追加到Lsoutput.txt文件已有内容后 |
<file | 将file文件重定向为输入源 | wc<file1,将file1中的内容作为输入传给wc命令。 |
2>或&> | 将命令所产生的错误信息输入到指定的输入源 | ls noexistingfile.txt 2>err.log,使用ls命令,查看一个不存在的文件时,将系统错误提示保存在err.log文件中 |
9、命令置换
命令替换是将一个命令的输出作为一个命令的参数。
命令格式如下所示:
command1 ‘command2’
其中,命令command2的输出将作为命令command1的参数。需要注意,命令置换的单引号为Esc键下方的【·】键。
ls ‘pwd’
pwd命令用于显示当前目录的绝对路径。在上面的命令行中,使用命令置换符,将pwd的运行结果作为ls命令的参数。最终,命令执行结果是显示当前目录的文件内容。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。