બેઝનેમ અને ડિર્નામ: બે આદેશો જે તમે જાણતા હોવા જોઈએ

ટર્મિનલ શેલ લિનક્સ આદેશો

કેટલીકવાર કેટલાક ટ્યુટોરિયલ્સનો હેતુ કંઈક વધુ વિચિત્ર અને વિચિત્ર આદેશોને સમજાવવા માટે હોય છે, બીજી બાજુ, ત્યાં કેટલાક એવા હોય છે જેમાં સિરિયલ વિતરણો શામેલ હોય છે અને સીડી, એલએસ, બિલાડી, વગેરે જેટલા લોકપ્રિય નથી, પરંતુ તે ફક્ત વ્યવહારુ છે. આ ટ્યુટોરીયલમાં હું તમને બતાવીશ કે તેમાંથી બે આદેશો સાથે શું કરી શકાય: આધાર નામ અને મને કહો.

કદાચ કોઈ પ્રાયોરી તેઓ તમારા માટે વાહિયાત લાગે અને તેનો કોઈ ઉપયોગ નથી, પરંતુ તેમની પાસે છે ખૂબ વ્યવહારુ કાર્યક્રમો કેટલાક કિસ્સાઓમાં, ઉદાહરણ તરીકે, સ્ક્રિપ્ટોમાં જ્યાં તમારે પાથનો અમુક ભાગ કા toવાની જરૂર હોય છે, જેમ કે ફાઇલ અથવા ડિરેક્ટરીનું નામ જેથી બીજી આદેશ આના પર કાર્ય કરે છે ...

તેઓ કયા માટે છે

આ આદેશો ખૂબ મૂળભૂત છે, અને તેના કાર્યો તે છે:

  • આધાર નામ: પાથમાંથી ફાઇલનું નામ કા toવા માટે વપરાય છે.
  • મને કહો: પાથમાંથી ડિરેક્ટરી નામ કા toવા માટે વપરાય છે.

વપરાશ ઉદાહરણો

અહીં તમે કેટલાક જોઈ શકો છો ઉદાહરણો તેનો ઉપયોગ કેવી રીતે કરવો:

  • ઉદાહરણ તરીકે, વાપરવા માટે આધાર નામ / etc / passwd સાથે, અને તે તેના આઉટપુટમાં ફાઇલનું નામ પાછું આપે છે, આ કિસ્સામાં પાસવાડ:
basename /etc/passwd

  • તમે પણ સ્પષ્ટ કરી શકો છો એક વિસ્તરણ જેથી તે તમને એક્સ્ટેંશન વિના ફાઇલનું નામ આપે. ઉદાહરણ તરીકે, ધારો કે તમે jpg એક્સ્ટેંશન વિના ઇમેજ /home/media/test.jpg નું નામ કા toવા માંગો છો (તે પાછો આવશે પરીક્ષણ):
basename -s .jpg /home/media/prueba.jpg

  • તમે પણ કરી શકો છો એક સાથે અનેક માર્ગો પર પ્રક્રિયા કરો અલગથી, આ માટે તમારે -a વિકલ્પનો ઉપયોગ કરવો પડશે:
basename -a /etc/passwd /var/log/boot.log

  • વિરુદ્ધ કરવું, અને ડિરેક્ટરીનું નામ આપવું, ફાઇલના નામ વિના, પછી તમારે ઉપયોગ કરવો પડશે મને કહો. ઉદાહરણ તરીકે, જો તમે તેને /var/spool/mail/test.txt પાથમાં વાપરવા માંગતા હો અને તે / var / spool / મેઇલ પાછો લાવવા માંગતા હો, તો પછી વાપરો:
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


તમારી ટિપ્પણી મૂકો

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. આવશ્યક ક્ષેત્રો સાથે ચિહ્નિત થયેલ છે *

*

*

  1. ડેટા માટે જવાબદાર: AB ઈન્ટરનેટ નેટવર્ક્સ 2008 SL
  2. ડેટાનો હેતુ: નિયંત્રણ સ્પામ, ટિપ્પણી સંચાલન.
  3. કાયદો: તમારી સંમતિ
  4. ડેટાની વાતચીત: કાયદાકીય જવાબદારી સિવાય ડેટા તૃતીય પક્ષને આપવામાં આવશે નહીં.
  5. ડેટા સ્ટોરેજ: cસેન્ટસ નેટવર્ક્સ (ઇયુ) દ્વારા હોસ્ટ કરેલો ડેટાબેઝ
  6. અધિકાર: કોઈપણ સમયે તમે તમારી માહિતીને મર્યાદિત, પુન recoverપ્રાપ્ત અને કા deleteી શકો છો.

  1.   ગ્રેગરી રોઝ જણાવ્યું હતું કે

    તે બાબતોનું સારું ઉદાહરણ કે જ્યારે તમે શીખી રહ્યાં હોવ ત્યારે તમને નકામું દેખાય છે, પરંતુ જ્યારે તમે આ વિષય પર જાઓ ત્યારે તમે જુઓ છો કે તે કેટલી વ્યવહારુ છે.