Что такое полное имя пути?

Я хотел бы понять, что на самом деле означает полное имя пути. У меня есть файл в моем домашнем каталоге с именем my_script. Я предположил, что полный путь к файлу ./my_script, что означает, что он находится в корневой папке, но я не уверен. Может кто-нибудь, пожалуйста, просветите меня об этом?

20
задан 27 August 2013 в 21:13

6 ответов

Нет, Ваше предположение является неправильным. Название полного пути my_script файл из Вашего корневого каталога: /home/your_user_name/my_script. Когда Вы вводите ./my_script в терминале Вы на самом деле пытаетесь выполнить сценарий (если исполняемый файл), и он будет выполняться, только если Ваш текущий рабочий каталог /home/your_user_name/. Для выполнения сценария, можно использовать также полный путь к файлу, который является, как я сказал /home/your_user_name/my_script.

Считается, что путь UNIX стили как Интернет-адреса, таким образом закончитесь в совместимость. Название полного пути текущего рабочего каталога может быть найдено в терминале при помощи следующей команды:

pwd

Для обнаружения полного пути для пользовательского корневого каталога можно использовать:

echo ~
echo $HOME
echo /home/$USER

Вышеупомянутые три команды эквивалентны.

Для обнаружения полного пути называют для файла, который можно использовать readlink команда. Например, в Вашем случае:

cd ~
readlink -f my_script
30
ответ дан 27 August 2013 в 21:13

Полный путь действительно означает полный путь к этому файлу или папке из каталога / файловой системы.

Например, полный путь к вашему сценарию:

/home/your_username/my_script

Или полный путь к исполняемому файлу grep:

/bin/grep

Что касается ./my_script ] символ . обозначает текущий каталог, поэтому вы фактически говорите: «Найдите в текущем каталоге файл или папку с именем my_script»

0
ответ дан 27 August 2013 в 21:13

Для понимания полного пути необходимо сначала знать начальную точку.

Корневой каталог / это - начальная точка *, отклоняют базирующиеся операционные системы. Это содержит все другие каталоги и система и пользователь.

Корневой каталог пользователя /home/USERNAME/ или ~/ если коротко, содержит файлы и каталоги пользователя. Например, Изображения, Музыка, Документы, и т.д. На каждый из этих каталогов ссылаются как /home/USERNAME/DIRECTORY например, Документы расположены в /home/USERNAME/Documents.

Как с каталогами, на файлы ссылаются таким же образом, например, названный файл my_script расположенный в корневом каталоге пользователя sosytee может быть сослан с помощью полного пути /home/sosytee/my_script или ~/my_script если коротко.

И файлы и каталоги могут быть сосланы/получены доступ с помощью их полных путей отовсюду в системе. Дополнительно можно получить доступ к ним использующий только их имя, если это находится в том же каталоге. Например, если пользователь в ~/ при использовании терминала он может получить доступ my_script файл при помощи просто my_script.

Дополнительно можно получить доступ к каталогам и файлам при помощи их имени только, если они размещаются в его переменную ПУТИ. Вы видите то, что является хранилищем в ПУТИ при помощи echo $PATH.

Простые примеры того, как получить доступ к файлам с помощью командной строки:

  • Пользователь в настоящее время в /home/USERNAME/ и хочет использовать cat команда на файле, расположенном в /home/USERNAME/Documents названный foo.txt:

cat Documents/foo.txt

  • Пользователь внутри ~/Documents и хочет запустить названный скрипт foo.sh расположенная реклама ~/Scripts/Foo:

    sh ../Scripts/Foo/foo.sh

    или

    sh ~/Scripts/Foo/foo.sh

любой ценой это - просто сводка.

Дополнительная информация

3
ответ дан 27 August 2013 в 21:13

Полный путь - это путь от корневого каталога (т. Е. /). ./my_script является относительным именем пути, потому что путь дан относительно текущего каталога, который обозначен .. Так что, если вы находитесь в своем домашнем каталоге, полный путь s.th. как /home/sosytee/my_script. Для вашего домашнего каталога есть «ярлык» ~, то есть вы также можете написать ~/my_script. Но это, конечно, приведет к разным путям для каждого пользователя.

Чтобы увидеть полный путь вашего текущего вызова каталога pwd.

0
ответ дан 27 August 2013 в 21:13

Я предположил, что полный путь: ./my_script

Нет, это не так. Этот путь относительно. Точка в начале указывает текущий каталог:

$ ls ./my_script
my_script
$ cd ..
$ ls ./my_script
ls: cannot access ./my_script: No such file or directory

Как видите, я изменил каталог, и my_script не найден, что означает, что ./my_script не является абсолютным путем. [ 119]

Я предположил, что полный путь - ./my_script, что означает, что он находится в корневой папке, но я не уверен.

Из Википедии :

[...] Полный путь или абсолютный путь - это путь, который указывает на одно и то же расположение в одной файловой системе независимо от рабочего каталога или объединенных путей.

Поскольку ./my_script не заполняют условие, что всякий раз, когда я могу найти файл my_script , следует сделать вывод, что это относительный путь.

Относительный путь - это путь относительно рабочего каталога пользователя или приложения, поэтому полный абсолютный путь указывать не нужно.

0
ответ дан 27 August 2013 в 21:13

Здесь... я предполагаю, что Вы спрашиваете, потому что Вы установили сервер Ubuntu на окнах...

копия этот код к Вашему проводнику папки на окнах %userprofile%\AppData\Local\Packages

, который покажет Вам исходное расположение... его скрытое где-нибудь в Вашей системе

В этой папке, дважды щелкните по папке для дистрибутива Linux, файлы которого Вы хотите просмотреть:

  1. Ubuntu: CanonicalGroupLimited. Прыжок UbuntuonWindows_79rhkp1fndgsc
  2. openSUSE 42: 46932SUSE.openSUSELeap42.2_022rs5jcyhyac
  3. SUSE Linux Enterprise Server 1246932SUSE.SUSELinuxEnterpriseServer12SP2_022rs5jcyhyac

названия этих папок могут немного измениться в будущем. Просто ищите папку, названную в честь дистрибутива Linux.

Ваш дом будет находиться под LocalState\rootfs\home

, большая часть этой информации была получена от , Как Получить доступ к Вашим Файлам Bash Ubuntu в Windows (и Ваш Windows System Drive в Bash)

0
ответ дан 10 October 2019 в 12:59

Другие вопросы по тегам:

Похожие вопросы: