Linux之认识和学习bash

1.学习shell的主要原因:1.文字接口的shell在各大distribution都一样,2.远程管理时文字接口速度较快3.linux内很多控制都是shell写的
2.系统合法的shell都写在/etc/shells中
3.用户默认登入取得的shell记录于/etc/passwd的最后一个字段
4.bash的主要功能:1.命令的编修能力2.命令与档案的补全功能3.命名别名的设定4.工作控制,前景背景控制5.程序化脚本6.通配符
5.type可以用来找到执行命令为何种类型,也用于与which相同的功能
type [tpa] name
type 不加任何参数时会显示出name是内部命令还是外部命令
-t:将name以file(表示外部命令),alias(该命令为命令别名所设置的名称),builtin(bash内置的命令功能)显示意义
-p:name为外部命令时才会显示完整文件名
-a:由PATH变量定义的路径中将所有含name的命令都列出来,包含alias
6.echo:变量的显示
unset:取消变量的方法
locate:列出所有的相关文件名
7.用env查看环境变量与常见环境变量的说明 env
用set查看所有变量(含环境变量与自定义变量)set
用export将自定义变量转成环境变量 export 变量名
8.$?也是变量,是前一个指令执行完之后的回传值,0表示成功
9.locale:影响显示结果的语系变量
10.read:让用户由键盘输入变量的值
read [-pt] variable
-p:可以接提示符
-t:接等待的秒数,不会一直等待用户
11.declare:声明变量的类型
declare [-aixr] variable
-a:定义为数组类型
-i:定义为整数类型
-x:与export一样,将变量变为环境变量
-r:将变量设为只读类型,不可更改不可重置
12.ulimit:限制用户使用资源的情况
ulimit [SHacdfltu] [配额]
-H:严格限制
-S:警告的设置
-a:列出所有的限制额度
-f:可以创建的最大文件容量
13.bash的配置文件主要分为login shell和 non-login shell
login shell 主要读取/etc/profile与~/.bash_profile
non-login shell 仅读取~/.bashrc
14.通配符:*,?,[]
*:代表0到无穷多个任意字符
?:代表一定有一个任意字符
[]:一定有一个在中括号内的字符
15.数据流重导向:
标准输入:代码为0,使用<或<<
标准输出:代码为1,使用>或>>
标准错误输出:代码为2,使用2>或2>>
16.连续命令的下达
cmd1;cmd2:不考虑命令相关性的连续命令执行
cmd1&&cmd2:若cmd1执行完且正确,则开始执行cmd2
若cmd1执行完却错误,则不执行cmd2
cmd1||cmd2:若cmd1执行完且正确执行,则不执行cmd2
若cmd1执行完且为错误,则开始执行cmd2
17.管道命令:|
管道命令仅会处理standard output,对于standard error output会予以忽略
管道命令必须要能够接受来自前一个指令的数据成为standard input继续处理才行
18.管道主要命令:
(1)cut:将一段信息的某一段切割出来
cut -d ‘分隔符’ -f fields
cut -c 字符范围
(2)grep:分析一行信息,将想要的信息拿出来
grep [-acinv] [–color=auto] ‘查找字符串’ filename
-a:将binary文件以text文件的方式查找数据
-c:计算找到字符串的次数
-i:忽略大小写的不同
-n:顺便输出行号
-v:反向选择
(3)排序命令sort:
sort [-fbMnrtuk] [file or stdin]
-f :忽略大小写地 差异
-b:忽略最前面空格符的部分
-M:以月份的名字来排名
-n:以纯数字进行排名
-r:反向排名
-u:相同数据中仅出现一行代表
-t:分隔符,默认用【tab】
-k:以那个区间进行排序
(4)uniq:排序完成后将重复的数据仅列出一个显示
uniq -i:忽略大小写字符的不同
uniq -c:进行计数
(5)wc:计算输出的信息的整体数据
wc -l:仅列出行
wc -w:仅列出多少字
wc -m:多少字符
tee:双向重定向,将数据流送与文件与屏幕
tee [-a] file:以累加的方式将数据加入到file当中
(6)tr:用来删除一段信息中的文字,或者进行文字信息的替换
tr [-ds] SET1…
-d:删除信息当中SET1这个字符串
-s:替换掉重复的字符
(7)col [-xb]
-x:将【tab】键转换成对等的空格键
-b:在文字内有反斜杠(/)时,仅保留反斜杠最后接的那个字符
(8)join 将两个文件当中有相同数据的那一行加在一起
join [-ti12] file1 file2
-t:默认以空格分割数据并且对比第一个字段的数据
-i:忽略大小写
-1:代表第一个文件要用哪个字段来分析
-2:代表第二个文件要用哪个字段来分析
(9)paste:直接将两行贴在一起,且用【tab】键隔开
paste [-d] file1 file2
-d:后接分隔符,默认以tab分隔
-:若file部分写成-,表示来自standard input的数据的意思
(10)expand:将tab按键转成空格键
expand [-t] file
-t:后接数字,一般来说一个tab键可以用8个空格键来替换
(11)split:将一个大文件依据文件大小或行数切割成小文件
split [-bl] file PREFIX
-b:后接欲切割的文件大小可加b,k,m单位
-l:以行数来进行切割
PREFIX:代表前导符,代表切割文件的前导文字
(12)xargs:可以读入stdin的数据,并以空格符或断行字符进行分辨,将stdin数据分割成arguments
xargs [-0epn] command
-0:若输入的stdin含有特殊字符可以将其还原成一般字符
-e:EOF,xargs分析到这个字符串时将会停止工作
-p:执行每个命令的参数时会询问用户的意思
-n:后接次数,每次command执行时,要使用几个参数的意思

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值