我的 SSD 上安装了 Ubuntu 16.04,还有一个 HDD,里面存放着我所有的 C++ 文件和程序。Ubuntu 识别出我有 HDD。当我在终端中并想要访问 HDD 上的 C++ 文件时,如何获取目录?我尝试使用cd
驱动器的名称,但没有成功。
我希望每次启动终端时都能自动进入 HDD 而不是桌面。
答案1
lsblk
以及mount
展示升我st 全部山编辑(bl奥卡西钾) 设备及其挂载点,即设备内容的访问点。C坚持这一点d目录,在终端中执行:
cd /path/to/dir
要为每个新的终端会话设置默认目录,只需将此行添加到.bashrc
主目录中的文件中。以下命令会自动执行此操作,您只需在后面输入正确的路径即可cd
:
echo 'cd /path/to/dir' >> ~/.bashrc
答案2
我将使用我的系统中的示例。您的系统将具有不同的驱动器名称,因此请进行相应调整
首先,检查驱动器是否已安装并找到其位置:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
├─sda2 8:2 0 461.4G 0 part /
└─sda3 8:3 0 3.9G 0 part [SWAP]
sdb 179:0 0 3.7G 0 disk
└─sdb1 179:1 0 3.7G 0 part
另一个驱动器上的文件系统sdb1
尚未挂载,因此我将使用该udisksctl
实用程序挂载它
$ udisksctl mount -b /dev/sdb1
Mounted /dev/sdb1 at /media/zanna/WORK STUFF
现在我可以cd
像这样到达挂载点:
zanna@xubi:~$ cd /media/zanna/WORK\ STUFF/
zanna@xubi:/media/zanna/WORK STUFF$
注意\
路径中的字符,需要转义空格。您可以自己输入,也可以TAB在输入名称的前几个字符后按。
为了确保文件系统在启动时挂载,/etc/fstab
如果尚未存在,您可以在 中添加一行。您可以为驱动器创建一个挂载点,并为其指定任何名称:
mkdir /media/$USER/mydrive
具体是什么样子取决于文件系统类型。按 UUID 挂载磁盘比按标签挂载磁盘更可靠(在我看来),因此要使用一个命令获取 UUID 和文件系统类型,请使用
$ sudo blkid
[...]
/dev/sdb1: UUID="2d8afeac-c623-4be7-b261-44920e6b8e71" TYPE="ext4" [...]
在这种情况下,文件系统类型是 ext4,所以我要做的是
sudo cp /etc/fstab /etc/fstab.bak
sudoedit /etc/fstab
和检查分区中是否已经有一行- 同一分区的重复行将导致错误。如果没有,那么我会在末尾添加一行,包括 UUID(使用您从 获得的 UUID blkid
,而不是下面的示例!)、挂载点和文件系统类型,如下所示:
UUID=2d8afeac-c623-4be7-b261-44920e6b8e71 /media/zanna/mydrive ext4 defaults 0 0
如果分区是 NTFS 分区,则该行将是
UUID=2d8afeac-c623-4be7-b261-44920e6b8e71 /media/zanna/mydrive ntfs-3g auto,user,rw 0 0
如果您需要撤消所做的任何更改,请恢复您的备份:
sudo mv /etc/fstab.bak /etc/fstab
有关更多信息/etc/fstab
,请参阅Ubuntu 帮助页面。
要设置终端会话的默认目录,请参阅打开终端会话时设置默认路径。
注意:一般来说,使用etckeeper比在/etc
答案3
打开 Nautilus,它是 Ubuntu 中的默认文件浏览器。选择目标目录。然后右键单击它并从上下文菜单中选择“在终端中打开”。
在打开的终端中输入pwd
。此命令将打印当前位置的完整路径(环境变量的当前值$PWD
)。您可以在cd
下次命令中使用此路径,也可以将此cd
命令附加到末尾~/.bashrc
以将此路径设置为“默认终端目录”。您可以使用以下命令执行此操作:
echo -e "\ncd '$(pwd)'" | tee -a ~/.bashrc
在哪里:
echo
将把引号括起来的字符串打印到标准输出。该选项-e
将启用反斜杠转义的解释,因此\n
将被解释为换行符。'$(pwd)'
将命令的输出扩展pwd
为字符串,并用单引号括起来。我们可以使用 来代替这个表达式
'$PWD'
,它(在这种情况下)将产生相同的结果。管道
|
将把标准输出重定向到命令的标准输入tee
。tee
with选项将把字符串附加到位于==目录中-a
的文件底部(并且还会将字符串打印到标准输出)。.bashrc
$HOME
~/