要将命令的输出存储为sh/ksh/bash中的变量,您可以执行任一操作
var=$(command)
Run Code Online (Sandbox Code Playgroud)
要么
var=`command`
Run Code Online (Sandbox Code Playgroud)
两种方法之间有什么区别?
我试图通过pid文件杀死进程:
kill -9 $(cat /var/run/myProcess.pid)
Run Code Online (Sandbox Code Playgroud)
pid文件包含进程号.但是执行kill不会给我带来任何标准输出并且进程仍然存在.但这有效:
kill -9 PID
Run Code Online (Sandbox Code Playgroud)
第一个kill命令有什么问题?是否无法从文件中提取PID?
pid文件的示例内容:
5424
Run Code Online (Sandbox Code Playgroud)
和
kill -9 5424
Run Code Online (Sandbox Code Playgroud)
作品.
返回的文件将在文件名中包含空格,因此我通过sed运行文件名以在开头和结尾添加引号.但是,当我使用$ CF和cp时,它失败了.如果我手动回显$ CF并使用结果文件代替$ CF它就可以了.有什么问题?
CF=`ls -tr /mypath/CHS1*.xlsx | tail -1 | sed -e 's/^/"/g' -e 's/$/"/g'`
cp $CF "/mydest/myfile.xlsx"
Run Code Online (Sandbox Code Playgroud) 我想将命令的结果存储到我的shell脚本中的变量中.我似乎无法让它工作.我想要目录中最近日期的文件.
PRODUCT= 'ls -t /some/dir/file* | head -1 | xargs -n1 basename'
Run Code Online (Sandbox Code Playgroud)
它不会工作
目前,我有以下代码工作:
灰
echo "start"
export abc="hello"
a=`python a.py`
echo $a
echo "end"
Run Code Online (Sandbox Code Playgroud)
a.py
import os
print os.getenv('abc')*2
Run Code Online (Sandbox Code Playgroud)
上面,我的 shell 脚本需要一个 python 脚本的帮助来处理某些事情,然后将答案返回给 shell 脚本。
虽然它可以工作,但我们需要编写另一个python文件,要求是向用户提供单个文件,那么它是如何制作的,我记得我曾经看到过某种将shell和python代码结合起来的实现,谁也知道&给我一些线索吗?