陈超众-Shell脚本

一. 命令基础

/:根目录
~:用户目录
ls -alF: 可连续输入几个参数

touch: 创建文件
cat: 查看文件

vim : 命令行编辑器

i:插入
esc:退出编写
:接受命令
wq:保存并退出


二. 第一个Shell脚本

实例:

#是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种Shell
#!/bin/bash
echo "Hello World !"

运行shell脚本两种方法

1. 作为可执行程序

#使脚本具有执行权限
$chmod +x ./test.sh
#执行脚本
$./test.sh

2. 直接运行解释器

$/bin/sh test.sh
$/bin/php test.php


三. Shell变量

定义变量

#定义变量时不加美元$符号; 变量名与符号之间不能有空格
your_name="chenchaozhong"

使用变量

your_name="chenchaozhong"
echo $your_name
#花括号是可选的,加花括号是为了帮助解释器识别变量的边界
echo ${your_name}

只读变量

readonly your_name

删除变量

unset your_name

Shell 字符串

# 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的;单引号字串中不能出现单引号
your_name='chenchaozhong'
#双引号里可以有变量, 双引号里可以出现转义字符
str="Hello, I know your are "$your_name"! \n"
# 获取字符串长度
echo ${#your_name}
#提取字符串
echo ${your_name:1:4}
#查找子字符串, 注意反引号
echo expr index "$your_name" on

Shell 数组

#定义数组,空格分开,
数组名=(值1 值2 ... 值n)
#获取所有数组
echo ${array_name[@]}
# 取得数组元素的个数
length=${#array_name[@]}
# 或者
length=${#array_name[*]}

mac Zip 常用命令

最通俗的用法
zip -q -r -e -m -o [yourName].zip someThing
-q 表示不显示压缩进度状态
-r 表示子目录子文件全部压缩为zip //这部比较重要,不然的话只有something这个文件夹被压缩,里面的没有被压缩进去
-e 表示你的压缩文件需要加密,终端会提示你输入密码的
// 还有种加密方法,这种是直接在命令行里做的,比如zip -r -P Password01! modudu.zip SomeDir, 就直接用Password01!来加密modudu.zip了。
-m 表示压缩完删除原文件
-o 表示设置所有被压缩文件的最后修改时间为当前压缩时间

当跨目录的时候是这么操作的
zip -q -r -e -m -o '\user\someone\someDir\someFile.zip' '\users\someDir'

zip -r -e SuperMovieiPhone.zip SuperMovieiPhone

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shel...
    某人在阅读 6,172评论 0 0
  • Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行sh...
    为了明天_加油阅读 2,490评论 0 0
  • 一,shell题记 不懂shell的程序员不是好程序员,学习shell是为了自动化,使用自动化可以非常有效的提高工...
    架构师小秘圈阅读 12,780评论 3 70
  • 一、shell脚本介绍 1.1 开头(环境使用shebang机制) #!/bin/bash 必须写在文件首行 符号...
    优果馥斯阅读 8,782评论 0 1
  • 他睡去,他将一句给他的情诗含在嘴中 仿佛一句谜语 他身体里的毒招来蝴蝶 坐落在他的骨骼上,仿佛一块无暇美玉 灯火阑...
    诗马集阅读 1,495评论 0 3

友情链接更多精彩内容