首页 > 系统相关 >关于Linux shell的简单分享

关于Linux shell的简单分享

时间:2024-10-16 16:47:12浏览次数:14  
标签:... shell .. filename 99 sh Linux txt 分享

背景

前两天看到有人分享说,谷歌程序员至少要会3种语言,这要求倒也不过分。一个强类型、一个弱类型,一个工具型语言,刚好三个。想着随便更新点东西,就写几点关于工具shell语言的经验分享。

在安装、部署、扩容、升级等重要场景中,Bash的方便性不言而喻。但我始终提醒大家,对代码保持敬畏,无论是Rust还是Shell。

请一定记下如下示例,一旦MY_PATH变量未初始化或为初始化空,系统数据可能毁于一旦。

简单的一行代码,破坏力惊人。

MY_PATH=$1
...
rm -rf /$MY_PATH

高级的语言,因为有严格的语法检查和编译器给你把关,因此显得倒也问题不大。反而是越容易的、越解释型的语言,对于编码者本身要求很高。下面就先简单分享几个入门级别的shell的使用经验。

简单实践

1. souce 命令

source+filename 或者 小点+空格+filename,在当前Bash中读取FileName命令并执行

更推荐source,显式指令比小点更醒目

# I
source filename 

# II 中间有空格
. filename

实践中,FileName可以作为简单配置文件,配置公共变量,比如

arch=x86_64
os_distro=Ubuntu
host_addr=192.168.0.1

2. 大括号

需要注意的是大括号内部不可留白

{a..z}   					字母a到z的列表
{1..99}  					数字1到99的列表
{t1,t2,t3}.txt  	        t1.txt,t2.txt,t3.txt
{f{1..3},f6}.sh             f1.sh,f2.sh,f3.sh,f6.sh

3. for命令

空格间隔的选项就可以for循环操作了,十分方便

# I
for f in Appale Banana Cherry; ...

# II
opts="Appale Banana Cherry"
for opt in $opt; ...

其他用法

# 遍历 /opt下文件名
for file in `ls /opt`; ... 

# 遍历 A 到 Z
for char in {A..Z}; ...

# 遍历 1 到 99
for num in {1..99}; ... 

4. 比较大小

不要混淆

== 和 !=  		是用来比较字符的
-lt -eq -gt 	是用来比较数值的  

5. 中括号

推荐更多使用双中括号[[,具体可以去查询用法,就到这了。

标签:...,shell,..,filename,99,sh,Linux,txt,分享
From: https://blog.csdn.net/u013214505/article/details/142986211

相关文章

  • 分享10个教师都会用到的宝藏网站,内容超全,收藏起来!
    1、人民教育出版社人民教育出版社官方网站-培根铸魂启智增慧https://www.pep.com.cn/专门提供人教版中小学教材电子版,包括小学、中学、高中及职业教育教材。不仅提供电子版教材,还附有相应的教学设计供参考,满足教师备课需求。2、国家中小学智慧教育平台国家中小学智慧教育平......
  • PowerShell 实现删除指定路径X天前文件功能并添加定时JOB实例
    公司的POA服务器的E盘隔三差五就爆满,原因是数据库备份文件越来越大,现在已经大到需要高频清理的地步了十一前出现的这个问题,当时为了不专门在假期里某天特地去清理磁盘,想着一定要搞个定时JOB实现自动清理最后选用了PowerShell脚本实现新建一个txt文件,打开编辑内容如下:#设置要......