Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell Unix-->;连接文件名+;变量内容并搜索它_Shell_Unix - Fatal编程技术网

Shell Unix-->;连接文件名+;变量内容并搜索它

Shell Unix-->;连接文件名+;变量内容并搜索它,shell,unix,Shell,Unix,我是shell脚本新手…我正在尝试删除一个使用以前的PID命名的文件,但我不知道如何将旧PID连接到文件名:( 这是我的密码 您可以从文件中提取PID: if [[ $? -ne 0 ]] ; then if [[ -f user_dos\.$(cat PID 2>/dev/null) ]] ; then rm user_dos\.$(cat PID 2>/dev/null) mv user_dos user_dos.$$ mv user_dos.new u

我是shell脚本新手…我正在尝试删除一个使用以前的PID命名的文件,但我不知道如何将旧PID连接到文件名:( 这是我的密码


您可以从文件中提取
PID

if [[ $? -ne 0 ]] ; then
  if [[ -f user_dos\.$(cat PID 2>/dev/null) ]] ; then  
  rm user_dos\.$(cat PID 2>/dev/null)
  mv user_dos  user_dos.$$ 
  mv user_dos.new user_dos
  echo $$ > PID
fi
我做了,工作了

if [[ $? -ne 0 ]] ; then
  if [[ -f PID ]] ; then
    MYPID=`cat PID`
  fi
  if [[ -f user_dos.$MYPID ]] ; then
    rm user_dos.$MYPID
  fi
  mv user_dos  user_dos.$$
  mv user_dos.new user_dos
  echo $$ > PID
fi

我知道,如果PID变量令人羡慕的话,我可以做一些像user_dos.${PID}这样的事情,但是我没有运气:(你很好,如果有帮助的话接受这个答案@jobormo
if [[ $? -ne 0 ]] ; then
  if [[ -f PID ]] ; then
    MYPID=`cat PID`
  fi
  if [[ -f user_dos.$MYPID ]] ; then
    rm user_dos.$MYPID
  fi
  mv user_dos  user_dos.$$
  mv user_dos.new user_dos
  echo $$ > PID
fi