Linux 为什么可以';我是否将文件从~/process.desktop移动到~/.config/autostart/?

Linux 为什么可以';我是否将文件从~/process.desktop移动到~/.config/autostart/?,linux,bash,Linux,Bash,我有一个脚本,它只需下载一个包,安装它,然后将“process.desktop”发送到~/.config/autostart,将其添加到XFCE的启动进程中 除了将process.desktop移动到~/.config/autostart之外,一切都正常/ 这是我的密码: mv ~/process.desktop ~/.config/autostart/ 它返回以下错误: mv: cannot stat '/username/process.desktop' : No such file or

我有一个脚本,它只需下载一个包,安装它,然后将“process.desktop”发送到~/.config/autostart,将其添加到XFCE的启动进程中

除了将process.desktop移动到~/.config/autostart之外,一切都正常/

这是我的密码:

mv ~/process.desktop ~/.config/autostart/
它返回以下错误:

mv: cannot stat '/username/process.desktop' : No such file or directory
注意,下载转到/home/username/,并[成功]安装在那里。process.desktop也位于/home/username/


感谢您的帮助,这是我脚本中最后一个需要修复的组件

奇怪-你肯定会希望
~
扩展到
/home/username

如果一件事不起作用,请尝试另一件:

mv $HOME/process.desktop $HOME/.config/autostart
问题:

  • 是否确实要用新文件替换现有autostart,而不是将新文件添加到现有autostart文件的末尾

平铺路径组件扩展到当前值$HOME。bash下的一个示例:

$ echo $HOME
/home/user
$ echo ~
/home/user
$ HOME=/tmp
$ echo ~
/tmp
您是否编辑了$HOME的值?您是否可能使用错误的主目录路径创建了此帐户?您可以通过以下方式进行检查:

grep username /etc/passwd

如果是这种情况,您可以使用usermod命令修复它,或者直接编辑/etc/passwd

sudo usermod -d /home/username username

嗨,谢谢你的回复,乔纳森。我现在正在测试这个新语法。另外,为了回答您的问题,autostart是一个目录。它满是processname.desktop文件。该死,运气不好。在终端中,它调用我的.desktop文件“process.desktop”,但在thunar中,它调用process_Start,这是我在代码中给它的标题。。。?我应该使用哪一个?
~
应该扩展到与
$HOME
相同的东西;更有可能的是,
$HOME
出错了。噢,该死,~/.config/autostart不存在。。。它消失了,凭空而来。我做了ls-a,它自行移除了。有我可以添加的吗?我可以想象一个简单的if语句检查它,如果它不在那里,添加它会起作用,但这会影响安装吗?
set-vx
是shell调试模式。您将看到每一行/每一块代码,然后是一组单独的行,显示如何展开所有变量。祝你好运。
echo$HOME
的输出是什么?不知何故,
/username
是偶然的吗?
sudo usermod -d /home/username username