我有一句话
这是例如
我想把它写到一个文件中,这句话中的每个单词都写成一个单独的行.
我怎样才能在shell脚本中执行此操作?
在我的脚本"script.sh"中,我想将第一个和第二个参数存储到某个变量中,然后将其余参数存储到另一个单独的变量中.我必须使用什么命令来执行此任务?请注意,传递给脚本的参数数量会有所不同.
当我在控制台中运行命令时
./script.sh abc def ghi jkl mn o p qrs xxx #It can have any number of arguments
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我希望我的脚本在一个变量中存储"abc"和"def"."ghi jkl mn op qrs xxx"应存储在另一个变量中.
How to perform string mapping for a value stored in a variable? Example: I have my output in a variable say "a".
set a "a.b12.d4" (its unknown)
Run Code Online (Sandbox Code Playgroud)
是否可以使用字符串映射将 $a 的内容映射为另一个变量 b 中的“\t”?
喜欢,
set c [string map {"contents of $a" "\t"}$b]
Run Code Online (Sandbox Code Playgroud)
{我知道 $a 不能在这里使用。有没有办法在字符串映射中替换 $a 的内容?}
我需要处理一个随机字符串,其中包含字符"..".如下所示
a..b/c..de/f-g..xyz..abc..def..123..
如何使用regexp获取这些".."之间的数据?(此字符串可以是任意长度,我需要获取每个中间数据集以进行进一步处理).请指导我这个.
谢谢!
是否可以从Unix控制台调用函数(在shell脚本中定义)?我有一个像这样的功能
add ()
{
a=$1
b=$2
c=`expr $a + $b`
}
Run Code Online (Sandbox Code Playgroud)
这是在脚本中定义的"my_script.sh".如何从命令提示符调用此函数?
我正在使用命令'string trimright'修剪我的字符串,但我发现这个命令修剪超过了所需.
我的表达式是" dssss.dcsss "如果我使用字符串修剪命令修剪最后几个字符".dcsss",它会修剪整个字符串.我怎么处理这个?
命令:
set a [string trimright "dcssss.dcsss" ".dcsss"]
puts $a
Run Code Online (Sandbox Code Playgroud)
预期产量:
dcsss
Run Code Online (Sandbox Code Playgroud)
实际输出
""
Run Code Online (Sandbox Code Playgroud) 是否可以使用regsub在表达式中进行不同的替换?
例:
set a ".a/b.c..d/e/f//g"
Run Code Online (Sandbox Code Playgroud)
现在,在该表达式中,是有可能取代" ."为" yes"" .."为" no"" /"为" true"" //"如" false在一个单一的regsub命令"?
我看到一些以前的帖子与打开文件以执行读写操作有关但我无法得到我的任务的答案.我想将一些结果附加到一个文件(如果它不存在,应该创建一个新文件).
但是,如果文件已经有结果,则应跳过追加并继续下一次搜索下一个结果.我为此编写了一个脚本,我在阅读文件时遇到了问题.脚本是这样的:
proc example {} {
set a [result1 result2 ... result n]
set op [open "sample_file" "a+"]
set file_content ""
while { ![eof $op] } {
gets $op line
lappend file_content $line
}
foreach result $a {
if {[lsearch $file_content $result] == -1} {
puts $op $result
}
}
close $op
}
Run Code Online (Sandbox Code Playgroud)
注意:在这个脚本中,我发现变量"line"为空{""}.我想我在阅读文件时遇到了麻烦.请在这件事上给予我帮助