Questions tagged «bash»

有关为Bash命令外壳编写的脚本的问题。对于具有错误/语法错误的shell脚本,请在此处发布之前,使用shellcheck程序(或在Web shellcheck服务器中的https://shellcheck.net)进行检查。有关Bash交互使用的问题更可能是Super User而不是Stack Overflow上的话题。


11
Unix-创建文件夹和文件的路径
我知道您可以mkdir创建目录和touch文件,但是无法一次性完成这两种操作吗? 即如果我想在文件夹other不存在时执行以下操作: cp /my/long/path/here/thing.txt /my/other/path/here/cpedthing.txt 错误: cp: cannot create regular file `/my/other/path/here/cpedthing.txt': No such file or directory 有没有人想出一个功能来解决这个问题?
125 linux  bash  shell  unix  scripting 

8
如何获取外壳中字符串的最后一个字符?
我写了以下几行来获取字符串的最后一个字符: str=$1 i=$((${#str}-1)) echo ${str:$i:1} 适用于abcd/: $ bash last_ch.sh abcd/ / 它不适用于abcd*: $ bash last_ch.sh abcd* array.sh assign.sh date.sh dict.sh full_path.sh last_ch.sh 它列出了当前文件夹中的文件。
125 string  bash  shell 

9
从Docker容器获取环境变量
从尚未在Dockerfile中声明的Docker容器获取环境变量的最简单方法是什么? 例如,通过某个docker exec container /bin/bash会话设置的环境变量? 我可以做到docker exec container env | grep ENV_VAR,但我更喜欢只返回值的东西。 我尝试使用docker exec container echo "$ENV_VAR",但是替换似乎发生在容器之外,因此我没有从容器中获取env var,而是从我自己的计算机中获取了env var。 谢谢。

6
如何分析bash shell脚本启动缓慢?
我的bash shell最多需要3-4秒才能启动,而如果我将其启动,--norc它将立即运行。 我开始进行“概要分析”,/etc/bash.bashrc并~/.bashrc通过手动插入return语句并寻求提高速度来进行,但是这不是一个定量过程,并且效率不高。 我如何配置我的bash脚本并查看哪些命令花费最多的时间来启动?
124 bash  profiling 


4
CURL访问需要从其他页面登录的页面
我有2页:xyz.com/a和xyz.com/b。我只有在先xyz.com/b登录后才能访问xyz.com/a。如果xyz.com/b不经过其他访问,我只是通过浏览器拒绝访问(没有重定向到登录)。在登录后xyz.com/a,我就可以访问另一个。 我的问题是使用curl命令执行此操作。我可以成功xyz.com/a使用curl 登录,但是尝试xyx.com/b访问后,访问被拒绝。 我使用以下内容: curl --user user:pass https://xyz.com/a #works ok curl https://xyz.com/b #doesn't work 我尝试将第二行与&一起使用,但没有用户/密码部分,但仍然无法正常工作。两个页面都使用相同的CA,所以这不是问题。有什么建议?谢谢

6
IFS = $'\ n'的确切含义是什么?
如果是以下示例,该示例将IFS环境变量设置为换行字符... IFS=$'\n' 什么是美元符号的意思 完全相同? 在这种特定情况下该怎么办? 在哪里可以找到有关此特定用法的更多信息(Google不允许在搜索中使用特殊字符,否则我不知道该怎么找)? 我知道什么是IFS环境变量,什么是\n字符(换行符),但是为什么不只使用以下形式:( IFS="\n"不起作用)? 例如,如果我想遍历文件的每一行并想使用for循环,则可以这样做: for line in (< /path/to/file); do echo "Line: $line" done 但是,除非IFS将其设置为换行符,否则此方法将无法正常工作。为了使其正常工作,我必须这样做: OLDIFS=$IFS IFS=$'\n' for line in (< /path/to/file); do echo "Line: $line" done IFS=$OLDIFS 注意:我不需要另一种方法来做同样的事情,我已经知道很多其他事情了……我只是很好奇,$'\n'想知道是否有人可以给我一个解释。


7
使用Bash计数字符串中char的出现
我需要使用Bash计算字符串中char出现的次数。 在下面的示例中,当字符是(例如)t,它echoš出现的正确的号码t中var,但是当字符是逗号或分号,它打印出零: var = "text,text,text,text" num = `expr match $var [,]` echo "$num"
123 bash  shell  sh 

7
如何在macOS终端中批量重命名文件?
我有一个包含一系列文件的文件夹: prefix_1234_567.png prefix_abcd_efg.png 我想批量删除一个下划线和中间内容,以便输出为: prefix_567.png prefix_efg.png 相关但不完全解释: 如何使用终端批量重命名文件? 正则表达式以在OS X终端中批量重命名文件

5
从路径中提取目录
在我的脚本中,我需要使用的文件目录。例如,文件 = “ stuff / backup / file.zip”。我需要一种从变量中获取字符串“ stuff / backup / ”的方法$file。
123 string  bash  path 

11
bash中noop [:]的用例是什么?
我在bash(:)中搜索noop,但是找不到任何好的信息。该运算符的确切目的或用例是什么? 我尝试了以下操作,它对我来说是这样的: [mandy@root]$ a=11 [mandy@root]$ b=20 [mandy@root]$ c=30 [mandy@root]$ echo $a; : echo $b ; echo $c 10 30 请让我知道,该操作员的实时使用情况或在强制使用它的任何地方。
123 bash  shell  noop 

8
如何在bash中打开emacs
我正在使用Ubuntu 11.10。当我在终端中键入命令“ emacs”时,它将打开emacs作为单独的窗口。我如何在终端中像Nano Editor一样打开它?
122 bash  emacs 


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.