设为首页 加入收藏

TOP

Linux学习——shell(二)
2023-07-23 13:34:45 】 浏览:48
Tags:Linux 学习 shell
{word}" != 'n' ] do read -p "要进入func($1)函数吗?请输入y/n:" word done if [ "$word" == 'n' ] then echo 0 return 0 fi if [ $1 -le 0 ] then echo 0 return 0 fi sum=$(func $(expr $1 - 1)) echo $(expr $sum + $1) } echo $(func 10) #与使用脚本的变量一样,直接在函数名字后面加上参数即可 ``` #### 函数的局部变量 用local 声明一个函数的局部变量 该变量只在函数内部有效 ```shell func(){ local var="123" echo $var } func echo $var ``` 输出结果为 ``` 123 #一行空行,表明在函数外这个局部变量不存在 ``` *** ## ssh * 用于登录远程服务器 ### ssh登录 格式: ``` ssh user@hostname -p 端口号(默认端口号22) ``` ### 配置文件 创建文件`~/.ssh/config` 在文件中输入: ``` Host myserver1 HostName IP地址或域名 User 用户名 Host myserver2 HostName IP地址或域名 User 用户名 ``` 此后登录服务器可以直接用别名`myserver1`、`myserver2` ### 密钥登录 免密登录 创建密钥 `ssh-keygen` 此后,`~/.ssh/`下会多出两个文件 * `id_rsa`:私钥 * `id_rsa.pub`:公钥 若想免密登录某个远程服务器,就复制公钥中的内容,到*远程服务器 *的`/~/.ssh/authorized_keys`文件里 也可以使用如下命令一键添加公钥 ```shell ssh-copy-id myserver ``` ### scp * 用于传输文件 ```shell scp source1 source2... destination ``` 将source下的文件复制到destination 复制文件夹: ```shell scp -r 本地文件路径 myserver:PATH ``` 将服务器的文件夹复制到本地当前路径 ```shell scp -r myserver:PATH . #注意这里有个"." 表示当前路径 ``` ## 常见命令 ### cut -f 显示指定域 -f 1-5 显示1-5域 -c 显示字符位置 -c num1-num2 -d 指定分隔符 ### paste 用于链接多个文件的域 -d 指定域 ### alias alias name='指令' 将指令改个名字 ### grep 显示指定文件中包含与指定样式匹配的行 -c 只显示包含匹配样式的行 -i 忽略大小写 -l 显示有匹配行的文件名 -n 输出前显示行号 -v 显示不匹配的行 -w 查指定字 grep 81$ 文件名 寻找81结尾的 或者可以写成 grep 81\> grep "\<王" 寻找姓王的人 ### tee 显示命令同时输出命令到文件 常和管道`|`一起使用 ### find ## 正则表达式 * `^` 匹配输入字符串的开始位置 * `[0-9]+` \]

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Linux常用操作命令总结 下一篇Podman Compose 新手指南

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目