基础操作 Shell

人类大脑中,大约有1000亿个神经元,每个神经元与大约10万个神经元相连。从本质上说,这就是我们想要创造的,在某种程度上,这对机器来说是可行的。
深度学习的目的是模仿人类大脑的工作方式。这在神经元,轴突,树突等方面意味着什么?嗯,神经元有胞体,树突和轴突。来自一个神经元的信号沿着轴突传播并转移到下一个神经元的树突。传递信号的那个连接被称为突触。

Shell

shell脚本

1
2
3
4
5
6
shell:shell脚本加密:https://blog.csdn.net/qq_35603331/article/details/83793475
用一个SHELL保存多台SSH账号密码,一个参数就能登录指定服务器 :https://blog.csdn.net/daisho/details/89467916
关联多个shell脚本文件:https://jingyan.baidu.com/a17d5285fd05d88098c8f2df.html
shell菜鸟教程:https://www.runoob.com/linux/linux-shell-array.html
shell读取文件某行内容:https://blog.csdn.net/sxf_123456/article/details/70739127
shell脚本之间的变量传递:https://blog.csdn.net/dreamcoding/article/details/8519708

shell echo

1
2
3
4
5
6
7
8
9
10
11
-n 		 输出之后不换行   
-e 对于转义字符按相应的方式处理
\b 表示删除前面的空格
\n 表示换行
\t 表示水平制表符
\v 表示垂直制表符
\c \c后面的字符将不会输出,同时,输出完成后也不会换行
\r 输出回车符(但是你会发现\r前面的字符没有了)
\a 表示输出一个警告声音
> echo "hello world!" > test1.tmp 把内容输出到文件中而不是标准输出
echo "" 打印空行

shell $

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
${变量名}     调用定义过的变量
$# 传给脚本的参数个数
$0 脚本本身的名字
$1 传递给该shell脚本的第1个参数
$2 传递给该shell脚本的第2个参数
$@ 传给脚本的所有参数的列表
$* 以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个
$$ 脚本运行的当前进程ID号
$? 命令执行结果反馈,0表示执行成功,其余数字表示执行不成功
$() 做命令替换用(commandsubstitution) ———— 并不是所有shell都支持
` ` 做命令替换用(commandsubstitution) ———— 基本上可用在全部的 unix shell 中使用
${ } 用于变量替换 $var 与${var}一样
$[] 进行数学运算 支持+ - * / %:分别为 “加、减、乘、除、取模”
$(()) 进行数学运算 支持+ - * / %:分别为 “加、减、乘、除、取模”
$((16#2a)) 结果为 42 (16进位转十进制) 作不同进位(如二进制、八进位、十六进制)作运算 输出结果皆为十进制
${} 参数替换
$*,$@ 位置参数
$? 退出状态
$$ 进程ID

shell 符号

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#			 				注释  #!除外
echo ${PATH#*:} 这里不表示注释, 数制转换, 不表示注释
echo $((2#101011))
[] test命令的另一种形式 // 数组元素, 例如 array[1]=abc // 字符范围, 在正则表达式中使用
(( )) [ ]的针对数学比较表达式的加强版
[[ ]] [ ]的针对字符串表达式的加强版 test 表达式本身放在[] 里
; 命令行分隔符, 可以在一行中写多个命令. echo hello; echo there
;; 终止 case 选项
. 隐藏文件前缀 // .命令等价于source // . 表示当前目录 .. 表示上一级目录 // 正则表达式中作为单个字符匹配
"" 组织特殊字符 双引号中可以引用变量
'' 组织特殊字符 单引号中不能引用变量
\ 转义字符
/ 文件名分隔符 // 除法
` 后置引用 命令替换
: 空命令 等价于 “NOP” // 也可被认为是 shell 内建命令 true 作用相同, 例如: 死循环 //在 if/then 语句中做占位符
! 取反操作符 != 不等于
? 测试操作 // 正则表达式中, ? 匹配任意单个字符
* 万能匹配符, 正则表达式中 数学乘法 // ** 幂运算
$ 变量符号 // 正则表达式中 行结束符
()
{xxx,yyy,zzz}
cat {file1,file2,file3} > combined_file 将file1,file2,file3合并在一起并重定向到commbined_file中. 大括号中不能有空格
{}
{}\; 路径名, 一般都是在 find 命令中使用, 注意; 用来结束find 命令序列的 –exec
>& >>& >> < 重定向
scriptname > filename 重定向脚本的输出到文件中, 覆盖原有内容
command &> filename 重定向 stdout 和 stderr 到文件中
command >&2 重定向 stdout 和 stderr
scriptname >> filename 重定向脚本输出到文件中, 添加到文件尾端, 如果没有文件, 则创建这个文件.
<< <<< 重定向, << 用在“here document”, <<< 用在“here string”
\<, \> 正则表达式中的单词边界 grep ‘\' testfile
| 管道, 分析前边命令的输出, 并将输出作为后边命令的输入
>| 强制重定向
|| 逻辑或
& 后台运行命令, 一个命令后边跟一个&, 将表示在后台运行
&& 逻辑与

shell 运算符

1
2
3
4
5
6
7
8
9
10
11
-eq      					 //equal  等于
-ne     //no equal 不等于
-gt      //great than 大于
-lt       // low than  小于
ge      // great and equal 大于等于,注意没有"-"
le      //low and equal 小于等于,注意没有“-”

case ... esac
export
pre_check
查看用户群组: echo $(ssh -n cmadmin@review.source.unisoc.com -p29418 gerrit ls-groups --user luna.xiong)

shell if

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
if fi       	   		  		定义判断https://www.cnblogs.com/myitm/archive/2012/07/05/2577416.html
if [ -f file ] 如果文件存在
if [ -d ... ] 如果目录存在
if [ -s file ] 如果文件存在且非空
if [ -r file ] 如果文件存在且可读
if [ -w file ] 如果文件存在且可写
if [ -x file ] 如果文件存在且可执行
if [ int1 -eq int2 ] 如果int1等于int2
if [ int1 -ne int2 ] 如果不等于
if [ int1 -ge int2 ] 如果>=
if [ int1 -gt int2 ] 如果>
if [ int1 -le int2 ] 如果<=
if [ int1 -lt int2 ] 如果<
If [ $a = $b ] 如果string1等于string2 字符串允许使用赋值号做等号
if [ $string1 != $string2 ] 如果string1不等于string2
if [ -n $string ] 如果string 非空(非0),返回0(true)
if [ -z $string ] 如果string 为空
if [ $sting ] 如果string 非空,返回0 (和-n类似)

Powered by Hexo and Hexo-theme-hiker

Copyright © 2013 - 2024 HELLO WORLD All Rights Reserved.

UV : | PV :