add
This commit is contained in:
parent
f6bcd8af45
commit
24be7e36af
@ -1,4 +1,4 @@
|
||||
# PHPer 必知必会的 Linux 命令
|
||||
## PHPer 必知必会的 Linux 命令
|
||||
|
||||
> __起因__
|
||||
|
||||
@ -8,4 +8,7 @@
|
||||
|
||||
主要为了方便其他新手学习 `Linux` , 也为学习 `Linux` 做下总结与记录,本书内容会偏向实用,不会有过多的理论知识,太底层的知识我也无法一一讲解,毕竟我只是一个 `Linux` 熟练工,书中内容我会尽个人的最大努力进行总结与归类,做到每个章节的内容可以独立阅读,帮助读者通过某些命令实现实现具体的功能。书中内容会陆续更新,无法一步到位。
|
||||
|
||||
## License
|
||||
MIT
|
||||
|
||||
|
||||
|
40
demo.md
40
demo.md
@ -50,3 +50,43 @@ fi
|
||||
```
|
||||
|
||||
补充:新建的 `shell` 脚本默认没有执行权限,需要自己添加
|
||||
|
||||
---
|
||||
|
||||
#### 获取文件名
|
||||
|
||||
```
|
||||
#!/bin/bash
|
||||
|
||||
file_jpg="sample.jpg"
|
||||
name=${file_jpg%.*}
|
||||
echo File name is: $name
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
#### 获取文件扩展名
|
||||
|
||||
```
|
||||
#!/bin/bash
|
||||
|
||||
file="sample.png.text"
|
||||
echo ${file##*.} #贪婪模式,匹配到最后一个 .
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
#### 重命名文件
|
||||
|
||||
```
|
||||
#!/bin/bash
|
||||
|
||||
count=1;
|
||||
for file in $(find . -maxdepth 1 -type f -iname '*.html')
|
||||
do
|
||||
new_file=filename-$count.${file##*.}
|
||||
echo "Renaming $file to $new_file"
|
||||
mv "$file" "$new_file"
|
||||
let count++
|
||||
done
|
||||
```
|
109
shell.md
Normal file
109
shell.md
Normal file
@ -0,0 +1,109 @@
|
||||
#### stty 命令
|
||||
|
||||
```
|
||||
stty -echo #禁止将输入信息显示在终端
|
||||
|
||||
stty echo #允许输入信息显示在终端,默认显示
|
||||
```
|
||||
|
||||
#### tput 命令
|
||||
|
||||
```
|
||||
tput clear #清空终端
|
||||
|
||||
tput civis #光标不可见
|
||||
|
||||
tput cnorm #光标可见
|
||||
```
|
||||
|
||||
#### read 命令
|
||||
|
||||
```
|
||||
read name #读取终端输入的值并赋值给 name 变量
|
||||
|
||||
echo $name #输出变量值
|
||||
|
||||
read username age #读取终端输入的 2 个值,并赋值
|
||||
|
||||
echo $username $age #输出值
|
||||
|
||||
read -s passwdord #读取输入的信息赋值给 password 变量,输入的信息不显示在终端
|
||||
|
||||
read -p "Enter input:" var #设置输入时显示提示语
|
||||
|
||||
read -sp "Enter input:" var #设置输入时显示提示语,输入信息不显示在终端
|
||||
|
||||
read -t 10 name #设置指定时间内输入,超时主动退出
|
||||
```
|
||||
|
||||
#### export 命令
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
#### typeset 命令
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
#### declare 命令
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
#### set 命令
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
#### unset 命令
|
||||
|
||||
```
|
||||
unset name #删除普通变量
|
||||
|
||||
unset -v test #删除环境变量
|
||||
|
||||
unset -f fun1 #删除函数
|
||||
```
|
||||
|
||||
#### sh 命令
|
||||
|
||||
```
|
||||
sh xx.sh #执行脚本
|
||||
|
||||
sh -n xxx.sh #检查语法
|
||||
|
||||
sh -i xxx.sh #交互式运行脚本
|
||||
|
||||
sh -x xxx.sh #显示脚本执行的顺序
|
||||
```
|
||||
|
||||
#### xargs 命令
|
||||
|
||||
```
|
||||
cat demo.sh | xargs #将内容转成单行显示
|
||||
|
||||
cat demo.sh | xargs -n 3 #将内容转成多行显示,每行 3 列
|
||||
|
||||
echo "splitXsplitXsplitXsplit" | xargs -d X #指定 X 符号作为分隔符
|
||||
|
||||
echo "splitXsplitXsplitXsplit" | xargs -d X -n 2 #指定 X 符号作为分隔符,每行 2 列
|
||||
|
||||
cecho.sh 文件内容
|
||||
#!/bin/bash
|
||||
echo $*'#'
|
||||
|
||||
cat args.txt | xargs -I {} ./cecho.sh -p {} -l #使用 -I 的时候,命令以循环的方式执行。如果有 3 个参数,那么命令就会连 同 {} 一起被执行 3 次。在每一次执行中 {} 都会被替换为相应的参数
|
||||
```
|
||||
|
||||
#### tr 命令
|
||||
|
||||
```
|
||||
echo "HELLO WHO IS THIS" | tr 'A-Z' 'a-z' #将大写字母转换成小写
|
||||
|
||||
echo "Hello " | tr -d 'H' #删除指定内容
|
||||
```
|
Loading…
x
Reference in New Issue
Block a user