Questions tagged «shell»

Shell是一种软件,它使用户通常可以通过在命令行中键入来与操作系统进行交互。

3
如何轻松查看内置shell命令的手册页?
如果我在脚本中看到一个我不知道的命令,然后键入(例如),man pushd或者man umask我看到了内置命令的手册页。我知道我可以这样做man bash并滚动以找到该内置命令的帮助,或者我可以打开浏览器并转到在线bash手册页,该页面易于搜索,但是有没有更简单的方法来获取该手册页的帮助。直接在命令行上使用单个内置命令?


1
当curl获得非200 HTTP状态时退出bash脚本
我有一个bash脚本设置来执行一些curl请求 for currency in EUR INR JPY do curl -i --data '{"currency": "'$currency'"}' -H "Accept: application/json" -H "Content-Type: application/json" http://0.0.0.0:8080/price && echo done 如果其中一个curl响应返回http状态!= 200,是否有办法使脚本退出? 我还希望保留标准的curl输出,例如,我不希望仅打印http状态代码的解决方案。 干杯

3
执行存储在变量中的命令
我有一个存储在变量中的命令。让我们假设变量$i具有值: cat -nT index.php |grep 'someregex' 当我尝试通过键入来执行上述变量时,$i它失败了,因为外壳程序尝试将整个变量作为一个命令执行。我使用也尝试eval($i)并把$i在反引号。 如何使Shell $i像命令一样执行?而且为什么它不能与之相同。 $i='echo hi'; $i 是因为我不得不在单引号中弄乱吗?(因为您不能嵌套它们。)目前,我的解决方案是 echo $i > /foo; . /foo 但是我不想为此创建一个文件,而只是以后删除它。 我的意思是“我砍了单引号是: $i='cat index.php | grep -P '"'"'MYREGEXHERE'"'"
11 linux  bash  shell 

8
从另一个目录运行脚本
通常,我要执行的脚本不在我当前的工作目录中,并且我真的不想离开它。 从另一个目录运行脚本(BASH,Perl等)是一种好习惯吗?他们通常会找到正常运行所需的所有东西吗? 如果是这样,运行“远程”脚本的最佳方法是什么?是吗 . /path/to/script 要么 sh /path/to/script 以及sudo在这种情况下如何使用?例如,这不起作用: sudo . /path/to/script

1
双引号内的awk不起作用
该命令不起作用: ssh $HOST "ls -l | awk '{print $1}'"` 上面忽略了该命令awk。我认为可能是因为双引号引起了? 另外,我将如何在awk中添加另一组双引号? 即: ssh $HOST "awk '{print $1 "*"}' /some_file" 我试图转义引号,甚至尝试了这个: ssh $HOST "awk '{print $1 "\""*"\""}' /some_file" 没有成功。
11 linux  shell  awk 


1
如何在Mac上的/ usr / bin中创建符号链接?
环境:OSX Sierra,达尔文内核版本16.3.0 根本问题:我想在中央存储库中使用一堆shell脚本,这些脚本具有#!/ usr / bin / zsh。在我的Mac上,zsh位于/ bin / zsh中。 尝试的解决方案:我想创建一个符号链接 ln -s /bin/zsh /usr/bin/zsh 我的用户帐户具有管理员权限,但是我不是root用户,因此我不希望在此Mac上启用root用户。因此我首先做了一个 sudo su 获取具有root特权的shell,然后执行ln命令。但是我仍然收到错误信息ln:/ usr / bin / zsh:不允许操作。 问题: 为什么会收到此错误消息? 我要怎么做才能创建链接? 有没有更好的方法可以实现我的最初目标?注意固定#!行数不是一种选择。
11 shell  sudo  symbolic-link  su  ln 


2
将文本文件的内容作为命令传送到telnet
使用命令telnet docs.python.org 80,我可以http://docs.python.org/2/license.html通过键入实际请求来向发出手动HTTP 请求。 现在,我不想实时输入内容,而是希望从文本文件中获取请求。 我尝试了这个: cat request.txt|telnet docs.python.org 80 request.txt: GET /2/license.html HTTP/1.1 Host: docs.python.org (您必须用空白行结束文件,否则将收到错误的请求!) 但是,到服务器的连接将立即关闭。 我应该如何正确地将request.txt传递给telnet docs.python.org 80? 编辑: 很高兴知道;如果您使用HEAD而不是GET,则将获得与您发出GET请求相同的响应,但消息正文除外。 因此,HEAD如果您只想检查HTTP标头,请使用。(即,这样响应的内容就不会使您的shell输出混乱。)


1
如何在Bash中反转alt-period的方向?
在Bash中,您可以按Alt- .插入上一个命令的最后一个参数。如果您多次按它,它将循环显示历史记录中所有命令的最后一个参数。但是,有时我将其按下太多次,并且我想反转自行车的方向,因此继续前进。这可能吗? (也就是说,如果你用反向我搜索Ctrl- r,你可以改变方向Ctrl- s什么是模拟Alt- .?)



5
Mac可以帮助我学习Linux吗?
上周,我第一次使用Mac。我注意到该外壳与Linux非常相似。我通常在Windows机器上进行开发,并且在Linux方面一无所知。Mac会帮我这个忙吗,还是由于Mac操作系统的细微差别使它变得更糟?
10 linux  macos  shell 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.