Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.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
Bash:从作为输入的相对路径中获取绝对路径_Bash_Path_Relative Path_Absolute Path - Fatal编程技术网

Bash:从作为输入的相对路径中获取绝对路径

Bash:从作为输入的相对路径中获取绝对路径,bash,path,relative-path,absolute-path,Bash,Path,Relative Path,Absolute Path,该脚本将文件的路径作为输入,以删除并移动到垃圾箱,不仅包括文件,还包括整个文件夹树 将文件的绝对路径作为输入应该不会有问题。 如果输入的是文件的相对路径,那么如何获得移动到垃圾箱的绝对路径 下面是一个肮脏的执行示例: 写入要删除的文件路径-->/home/user/mydata/song.mp3(绝对路径) 在垃圾箱中将获得:。垃圾箱/home/user/mydata/song.mp3 #!/usr/bin/bash read path if [[ "$path" =~ ^/home/user

该脚本将文件的路径作为输入,以删除并移动到垃圾箱,不仅包括文件,还包括整个文件夹树

将文件的绝对路径作为输入应该不会有问题。 如果输入的是文件的相对路径,那么如何获得移动到垃圾箱的绝对路径

下面是一个肮脏的执行示例:

写入要删除的文件路径-->/home/user/mydata/song.mp3(绝对路径) 在垃圾箱中将获得:。垃圾箱/home/user/mydata/song.mp3

#!/usr/bin/bash

read path
if [[ "$path" =~ ^/home/user ]] ; then
  echo mv $path Trash$path
else
  echo mv /home/user/$path Trash/home/user/$path
fi
写入要删除的文件路径---->mydata/song.mp3(相对路径) 在垃圾箱中,将获得:。垃圾箱/home/user/mydata/song.mp3

的可能副本
#!/usr/bin/bash

read path
if [[ "$path" =~ ^/home/user ]] ; then
  echo mv $path Trash$path
else
  echo mv /home/user/$path Trash/home/user/$path
fi