shell
程序员的修养
好好学习
展开
-
shell里面的PATH
PATH用于是一个目录路径,用于保存操作系统搜索运行程序,如果将要运行的程序不在当前目录,操作系统会根据Path变量中记录的目录去依次搜索,如果在这些目录中可以找到待运行的程序,程序可以正常运行,否则失败。1、查看PATH变量echo $PATH2、设置PATH变量比如我们的测试机是test,我们将/opt/Homebrew/bin加到PATH变量中,export PATH =$PATH:/opt/Homebrew/bin但是这仅是临时修改,重新起一个shell,/opt/Homebrew/原创 2022-01-14 20:09:20 · 3719 阅读 · 0 评论 -
bash特性
命令执行的结果:成功表示0,失败表示1-255,不同命令有不同说明,一般在脚本中我们会通过。bash通过数值方式告诉用户键入命令是否执行成功,执行结果保存在bash的。bash是一个命令处理器,运行在文本窗口zh哦那个,执行用户输入的命令。保留用户的历史执行的命令,可以使用history查看之前执行过的命令。C-u: 删除光标所在位置至行首的命令行信息。C-k: 删除光标位置至命令行行尾的信息。C-c: 结束前台进程,取消命令的进程。C-a: 将光标跳转至命令行的行首。C-e: 将光标跳转至命令行的行尾。原创 2023-06-05 09:20:33 · 583 阅读 · 0 评论 -
shell基本概念理解
(1)理解:将shell命令组织成程序,写在文件中,我们通过某种解释器可以执行这个文件,读取其中代码,让计算机完成相应的指令,这个文件就是shell脚本。文件一般以“.sh”为后缀,由shell命令、shell的逻辑语句以及注释信息等组成。”,称之为shebang,其作用就是告诉unix系统shebang后面的内容是使用的解释器的类型。经验:我们在写脚本的时候要指明正确的shebang,让正确的解释器来将我们的脚本转换为机器语言,完成相应的逻辑。(4)调试脚本,执行过程中看输出。1、什么是shell。原创 2023-06-05 08:24:51 · 599 阅读 · 0 评论 -
边学边看--cp命令
命令行会出现询问的语句,因为如果目标文件夹内已存在和需要复制的文件名相同则默认询问是否覆盖,如果不想被询问使用参数-f。参考资源:https://www.runoob.com/note/29134。cp来源于英文单词“copy”,意为复制,用于实现文件或者文件夹的复制。cp 【参数】 源文件名 目标文件名。原创 2023-06-05 08:04:43 · 915 阅读 · 0 评论 -
终端走代理
在mac电脑中代理端口:打开系统偏好设置–>网络–>右下角高级–>选择代理–>选择网页代理即可查看代理地址(IP地址)和端口。设置所有的代理:export ALL_PROXY=socks5://127.0.0.1:1080。我们可能会遇到下载git的时候速度很缓慢,我们可以通过让终端走代理的方式来加快速度。2、把代理服务器地址写入shell配置中,永久保存。1、只作用于当前终端,不影响整体环境。3、修改某个工具的配置,比如git。原创 2023-02-15 10:49:03 · 633 阅读 · 0 评论 -
查看本地分支、远程分支的HEAD
【思路】获取本地分支,然后再找到.git目录,然后从refs的heads下面获取本地分支的head。在.git文件夹下有一个refs的目录,存储指向提交对象的指针,包括:分支、远程仓库和标签等;查看本地分支的HEAD。原创 2023-01-11 17:20:22 · 1284 阅读 · 1 评论 -
shell脚本中-eq、-ne、-gt、-ge、-lt、-le
在shell脚本中,我们经常在if语句中看到-ge等字样,下面我们看看这都是什么意思。2、-eq,-ne等比较符只能用于数字比较,有字符也会先转换成数字然后进行比较。1、在shell中进行比较时,结果为0代表真,为1代表假。原创 2023-01-11 14:48:06 · 15175 阅读 · 0 评论 -
Linux创建软连接--ln -s
ln 为某一个文件在另外一个位置建立一个同不的链接,这样操作之后就不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的 目录下用ln命令链接它就可以,不必重复的占用磁盘空间1、参数介绍ln参数是-s–symbolic:表示符号。使用-s参数它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间不使用-s参数, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。2、建立软链语法ln -s 源文件原创 2022-01-17 17:42:54 · 60601 阅读 · 0 评论 -
shell中set
set指令能设置所使用shell的执行方式,可依照不同的需求来做设置1、参数介绍 -a 标示已修改的变量,以供输出至环境变量。 -b 使被中止的后台程序立刻回报执行状态。 -C 转向所产生的文件无法覆盖已存在的文件。 -d Shell预设会用杂凑表记忆使用过的指令,以加速指令的执行。使用-d参数可取消。 -e 若指令传回值不等于0,则立即退出shell。 -f 取消使用通配符。 -h 自动记录函数的所在位置。 -H Shell 可利用"!"加<指令编号>的原创 2022-01-04 15:55:37 · 676 阅读 · 0 评论 -
shell中curl的使用
curl用来请求服务器,表示该命令用来处理客户端的URL1、使用curl请求https://www.example.com➜ curl https://www.example.com<!doctype html><html><head> <title>Example Domain</title>2、参数学习-d:表示post请求//使用-d参数以后,HTTP 请求会自动加上标头Content-Type : applic原创 2022-01-04 15:37:57 · 3421 阅读 · 0 评论 -
shell里面的jq
jq能处理的需要是严格的JSON格式数据,JSON对象和JSON字符串是不行的,所以如果要使用jq,需要验证json是否是严格的json,当然,jq提供了相应的命令,下面我们安装并使用吧安装brew install jq1、获取json数据我们以github上jq项目最新一条评论的JSON数据为例,我们使用curl来获取,代码和结果如下curl 'https://api.github.com/repos/stedolan/jq/commits?per_page=1'结果:[ {原创 2022-01-04 15:19:35 · 2119 阅读 · 0 评论 -
边学边看--tar命令学习
阅读脚本的时候发现,tar命令,不知道是什么意思,所以学习了一下,现在大家分享一下tar 命令:用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的主操作模式:-A, --catenate, --concatenate 追加 tar 文件至归档-c, --create 创建一个新归档-d, --diff, --compare 找出归档和文件系统的差异–delete 从归档(原创 2021-12-29 14:57:25 · 3001 阅读 · 0 评论 -
边学边写--Podfile遇到的shell语法awk、各种括号、=~
1、调试shell脚本在命令行工具中执行下面命令,就会执行脚本sudo bash -x install_source2、awkawk 是用来提取列的主要工具,举个例子 echo “aa bb cc” | awk -F ‘{print $1}’ 结果就是aa,意思是把字符串按空格分割,取第一个;awk会根据空格和制表符,将每一行分成若干字段,依次用$1、$2、$3代表第一个字段、第二个字段、第三个字段等等可以使用-F指定分隔符,例子1、原始需要处理的字符串如下,保存到文件demo.txt中原创 2021-12-03 18:26:14 · 493 阅读 · 0 评论 -
边学边写--shell中-a ~-和exit
1、shell中-a ~-z[ -a FILE ] 如果 FILE 存在则为真。[ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。[ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真。[ -d FILE ] 如果 FILE 存在且是一个目录则为真。[ -e FILE ] 如果 FILE 存在则为真。[ -f FILE ] 如果 FILE 存在且是一个普通文件则为真。/////[ -g FILE ] 如果 FILE 存在且已经设置了SGID则为真。[ -h原创 2021-12-03 18:24:25 · 140 阅读 · 0 评论 -
边学边写--查看shell命令
(1)使用man命令查看命令手册页的时候如果不记得命令名怎么办?可以使用关键字搜索手册页。语法是:man -k 关键字。例如,要查找与终端相关的命令,可以输入man -k terminal。例如:阅读第1部分的简介的命令行如下的输入man 1 intro(2)info来查看某个命令的info页面的信息例如,可以输入info info来了解info页面的相关内容(3)使用命令的–help选项。例如你可以输入hostname -help来查看hostname 帮助信息。关于帮助的更多信息,可以输原创 2021-11-18 19:55:57 · 553 阅读 · 0 评论