У меня есть много папок на моей машине, многие из тех папок имеют больше папок в них, больше папок в тех папках, и так далее... Теперь, когда я делаю бесспорный cd
и cp
операции, которые я действительно каждый день как разделяю процесса резервного копирования или чего-то, которое это становится довольно раздражающей необходимостью ввести во всем пути к файлу к файлу или местоположению, даже с функцией автозамены ВКЛАДКИ.
Таким образом, то, что я думаю, было бы действительно полезно, то, если я мог бы сделать псевдоним, как для команды, но вместо этого для пути к файлу. Действительно ли это возможно?
Вот некоторые примеры того, как я хотел бы, чтобы это работало:
Я хотел бы смочь присвоиться ~/Documents/SectionA/Sub-folder65/SectionF-2
равняться псевдониму такой как pandaPictures
так, чтобы я мог использовать его, чтобы сделать следующие виды вещей:
cp pandaPictures/pic1.png ~/Pictures
cd pandaPictures
cd pandaPicture/Specials
И также было бы хорошо, если автоматическое заполнение ВКЛАДКИ будет работать с путями к файлам, когда они будут включать эти псевдонимы пути к файлу также.
Я также хотел бы смочь присвоиться PandaImages/2016/Sector7
к псевдониму такой как safePandaImages
так, чтобы я мог использовать его, чтобы сделать следующие виды вещей:
cp ~/Documents/Images/safePandaImages/panda.jpg ~/Pictures
cd ~/Pictures/Photos/Images/Wallpaper/safePandaImages
В примерах я даю выше, второй раздел не является насущной необходимостью (где псевдоним не просто вначале, но также и в середине и конце), если это не возможно или очень невыполнимо, чтобы сделать. Хотя, если это возможно, я не возражаю против него не совсем сходство с вышеупомянутым (например, если Вы должны иметь []
s вокруг псевдонима или чего-то так, чтобы было ясно, что это не просто регулярный путь к файлу).
Я выполняю Ubuntu GNOME 15.10 с GNOME 3.18.
Откровенно говоря, это - задание для переменных:
pandaPictures=~/Documents/SectionA/Sub-folder65/SectionF-2
cp "$pandaPictures"/pic1.png ~/Pictures
cd "$pandaPictures"
cd "$pandaPictures"/Specials
Или:
safePandaImages=PandaImages/2016/Sector7
cp ~/Documents/Images/"$safePandaImages"/panda.jpg ~/Pictures
cd ~/Pictures/Photos/Images/Wallpaper/"$safePandaImages"
Bash не достаточно умен к вместе с содержанием переменных, но zsh может:
$ foo=/usr
$ cp $foo/ # press Tab
bin/ include/ lib/ lib32/ lib64@ local/ sbin@ share/ src/
С ударом, можно сначала заставить это разворачивать каждую переменную, псевдоним, управлять заменой, и т.д., с помощью Ctrl Высокий звук E и затем использовать заполнение клавишей Tab:
$ foo=/usr
$ cp $foo # press Ctrl-Alt-E
$ cp /usr
<час> Однако если Вы делаете, это регулярно, пишет сценарий его . Сделайте сценарий. Добавьте его к crontab. Забудьте это.
Переменные являются, вероятно, лучшим решением, но Вы могли также создать символьные ссылки, которые выполнят то же самое, по крайней мере, для первого случая. Преимущество является легким автозавершением.
ln -s ~/Documents/SectionA/Sub-folder65/SectionF-2 ~/pandaPictures
<час> cp ~/pandaPictures/pic1.png ~/Pictures
cd ~/pandaPictures
cd ~/pandaPictures/Specials