如何删除变量中的额外空格HEAD?
HEAD=" how to remove extra spaces "
Run Code Online (Sandbox Code Playgroud)
结果:
how to remove extra spaces
Run Code Online (Sandbox Code Playgroud) 我在Windows 10上安装了适用于Linux的新子系统(附带Windows周年更新),并开始使用它.
我注意到,即使.profile文件存在,启动shell(ubuntu bash)也不会加载.profile或.bash_profile.有修复吗?
(并且有很多声誉的人可以制作windows-bash标签吗?)
我试图case在Bash中使用(在Linux中).
如果X在460和660之间,则输出X信息.
如果X介于661和800之间,请执行其他操作.
等等.
现在这就是我所拥有的:
case $MovieRes in
[461-660]*) echo "$MovieName,480p" >> moviefinal ;;
[661-890]*) echo "$MovieName,720p" >> moviefinal ;;
[891-1200]*) echo "$MovieName,1080p" >> moviefinal ;;
*) echo "$MovieName,DVD" >> moviefinal ;;
esac
Run Code Online (Sandbox Code Playgroud)
但不知何故,480p,720p或1080p的许多都以DVD结尾.变量$MovieRes是一个简单的列表,为每行显示1到1200之间的数字.根据值,case决定应用哪个"case".
我想知道如何实际使用它case来实现这一点,因为在处理这样的范围时有点混乱.
你如何将m提高到n的幂?我到处搜索过这个.我发现写m**n应该有效,但事实并非如此.我正在使用#!/ bin/sh
我想将多个秘密连接到 GitHub 上的工作流程操作中。
我想到的示例是创建从文件夹到文件名的完整路径。
*/5 * * * * my command
Run Code Online (Sandbox Code Playgroud)
此条目有效,但每5分钟执行两次,为什么?
在/var/log/cron其中显示:
Jun 16 22:20:01 Test CROND[12512]: (root) CMD (my command)
Jun 16 22:20:01 Test CROND[12516]: (root) CMD (my command)
Run Code Online (Sandbox Code Playgroud)
所以它不是来自两个用户.
它只输入一次crontab -e -u root.该命令是一个php命令.
在文件中包含以下内容:
VARIABLE1="Value1"
VARIABLE2="Value2"
VARIABLE3="Value3"
Run Code Online (Sandbox Code Playgroud)
我需要一个输出以下内容的脚本:
Content of VARIABLE1 is Value1
Content of VARIABLE2 is Value2
Content of VARIABLE3 is Value3
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
在我的Mac OSX上,我的bash脚本有一个纪元时间"123439819723".我可以通过"date -r 123439819723"将日期转换为人类可读的格式,这给了我"Fri Aug 26 09:48:43 EST 5881".
但是我希望日期是mm/ddd/yyyy:hh:mi:ss格式."date --date"选项在我的机器上不起作用.
我的问题:
#!/bin/bash
function testFunc(){
echo "param #1 is :" $1
echo "param #2 is :" $2
}
param1="param1"
param2="param2"
testFunc $param1 $param2
Run Code Online (Sandbox Code Playgroud)
这样输出是:
param #1 is : param1
param #2 is : param2
Run Code Online (Sandbox Code Playgroud)
但是当我将param1设置为空字符串时:
param1=""
Run Code Online (Sandbox Code Playgroud)
然后输出如下:
param #1 is : param2
param #2 is :
Run Code Online (Sandbox Code Playgroud)
我想问题是当第一个参数为空时,它没有被声明,所以它实际上不会作为函数参数传递.
如果这是问题,那么有没有办法在bash中声明变量"空字符串",或者是否有任何解决方法来获得预期的行为?
注意:如果我调用这样的函数,它按预期工作:
testFunct "" $param2
Run Code Online (Sandbox Code Playgroud)
但我想保持代码清洁.
更新:
我最近发现-u了一个标志,如果即将使用未绑定的变量,它会引发错误.
$ bash -u test.sh
param #1 is : param1
test.sh: line 5: $2: unbound variable
Run Code Online (Sandbox Code Playgroud) 我试图将特定的本地go文件作为文档网页提供,但无法做到.
该负责人godoc文件说:
使用-http标志(即godoc命令),它作为Web服务器运行,并将文档显示为网页.
user_me$ godoc -http=:6060
Run Code Online (Sandbox Code Playgroud)
这确实创建了与go页面类似的东西,但它不呈现我想要呈现的特定文件.所以我试着提供我想要的文件的名称:
user_me$ godoc -http=:6000 hello.go
Run Code Online (Sandbox Code Playgroud)
但是,它只回复:
usage: godoc package [name ...]
godoc -http=:6060
-ex=false: show examples in command line mode
-goroot="/usr/local/go": Go root directory
-html=false: print HTML in command-line mode
-http="": HTTP service address (e.g., ':6060')
-httptest.serve="": if non-empty, httptest.NewServer serves on this address and blocks
-index=false: enable search index
-index_files="": glob pattern specifying index files;if not empty, the index is read from these files in sorted order
-index_throttle=0.75: index throttle value; …Run Code Online (Sandbox Code Playgroud)