Понекад су неки водичи усмерени на објашњавање нешто егзотичнијих и чуднијих наредби, с друге стране, постоје неки који укључују серијске дистрибуције и нису толико популарни као цд, лс, цат итд., Али су подједнако практични. У овом упутству ћу вам показати шта се може урадити са две од тих наредби: основно име и реци ми.
Можда вам се априори чине апсурдним и да немају користи, али имају прилично практичне примене у неким случајевима, као што је, на пример, у скриптама где је потребно издвојити неки део путање, као што је име датотеке или директоријум, тако да друга команда делује на овоме ...
Чему служе
Ове наредбе су врло основне и његове функције звук:
- основно име: користи се за издвајање имена датотеке из путање.
- дирнаме: користи се за издвајање имена директоријума из путање.
Примери употребе
Овде можете видети неке примери како их користити:
- На пример, да се користи основно име са / етц / пассвд и да враћа име датотеке у свом излазу, у овом случају пассвд:
basename /etc/passwd
- Такође можете одредити продужење тако да вам даје име датотеке без наставка. На пример, претпоставимо да желите да издвојите име слике /хоме/медиа/тест.јпг без јпг наставка (вратило би се тест):
basename -s .jpg /home/media/prueba.jpg
- Можете чак обради више рута одједном одвојено, за ово морате користити опцију -а:
basename -a /etc/passwd /var/log/boot.log
- Да бисте учинили супротно и дали вам име директоријума, без имена датотеке, тада морате да користите дирнаме. На пример, ако желите да га користите у путањи /вар/споол/маил/тест.ткт и вратите га / вар / споол / маил, онда користите:
dirname /var/spool/mail/prueba.txt
Што се тиче а корисност у скрипти, ево још једног примера. Замислите да имате једноставну скрипту и да у њој постоји путања која је променљива. Али желите да прикаже директоријум који садржи датотеку, без обзира на датотеку, у том случају бисте могли имати нешто попут:
pathname="/home/usuario/data/fichero" result=$(dirname "$pathname") echo $result
Очигледно је да би у овој скрипти „назив пута“ увек био исти статички елемент који је константа декларисала на почетку, али могу бити случајеви у којима то није, и ту је постаје практично. На пример:
/*script para convertir una imagen gif en png*/ #!/bin/sh for file in *.gif;do #Salir si no hay ficheros if [! -f $file];then exit fi b='basename $file .gif' echo NOW $b.gif is $b.png giftopnm $b.gif | pnmtopng >$b.png done
Добар пример оних ствари које када учите видите бескорисним, али када дођете до предмета видите колико су практичне.