د امرونو کارولو څرنګوالی چې یوازې په یوه وخت کې د ټولو فایلونو سره چې تاسو یې غوره کوئ فایل کار کوي

ډیری وختونه موږ د سکریپټ اجرا کولو ته اړتیا لرو ترڅو د پی ډی ایف متن ته متن بدل کړئ ، .doc فایلونه په html ، وغيره کې واړوئ. مسله دا ده چې دا حکمونه په یو وخت کې یوازې یو فایل مني او دا خورا ستړي کونکي دي که چیرې موږ اړتیا لرو په ورته فایلونو کې ورته دنده ترسره کړو ، په ځانګړي توګه کله چې موږ سکریپټ ترسره کوو.

زه د دې ستونزې په کارولو سره د حل وړاندیز وړاندیز کوم ls, سل, شپي, بره y sh. هغه څه چې موږ به یې وکړو په هر قطار کې سم کمانډ لاین رامینځته کول او د sh سره اعدام کول دي ، او څنګه چې sh به په یو وخت کې یو لاین اعدام کړي ، د رام حافظې مصرف به زیاتوالی ونلري ، کوم چې د نورو میتودونو سره حتی کولی شي زیربنایی ماشینونه کنګل کړي.

راځئ وګورو چې د دې قوماندې ترتیب څنګه پرمخ وړو.

1- لومړی شی چې موږ یې باید ترسره کړو هغه فایلونه دننه کړئ چې له لارې به یې کارول کیږي ls:

ls --directory /camino/a/carpeta/*.ext

2- بیا به موږ دا فایلونو ته د قیمتونو انتقال کولو ته اړتیا ولرو «/ لارې / ډلې ته
فایلونه«

ls --directory /camino/a/carpeta/*.ext | sed 's/^/"/' | sed 's/$/"/'

3- اوس بره دا به چمتو وي چې ډاټا ترلاسه کړي.

ls --directory /camino/a/carpeta/*.ext | sed 's/^/"/' | sed 's/$/"/' | awk '{print $0}'

ځکه چې بره خپله ژبه لري موږ به د نرخونو جلا کولو ته اړتیا ولرو چې موږ غواړو داسې ښکاري چې د نورو دندو په مینځ کې متن ولیکئ موږ به د بیک سلیش کارولو ته اړتیا ولرو \ راځئ چې وګورو چې څنګه یو څه جلا کړو.
یوه نرخ جلا کړئ

\”

په محصول کې د بیک سلیټ ښودل (موږ به درې بارونو ته اړتیا ولرو)

\\\

ځینې ​​وختونه موږ به انفرادي جلا کونکي ته اړتیا ولرو ، یوازې هغه متن یا نرخونه چې د دوه شاته کلاسونو په مینځ کې څرګندیږي په پایله کې به وي:

'""'\"\'""'

4- راځئ وګورو چې څنګه د ټولو فایلونو نوم بدل کړئ چې د قوماندې په کارولو سره لیست شوي دي mv یوازې د مخه یو ننوتلو لپاره. (اوس د فایل لیست کولو لپاره موږ به د ترکیب "$ 0" کارولو ته اړتیا ولرو هرکله چې موږ ورته اړتیا لرو)

ls --directory /camino/a/carpeta/*.ext | sed 's/^/"/' | sed 's/$/"/' | awk '{print "mv "$0" \"`dirname

"$ 0 ″" / Text-any-asebasename "$ 0 ″" \ ""} '| ش

یادونه په پای کې اضافه شوي لکه څنګه چې په تیرو ترتیب کې ښودل شوي ترکیب « | ش »کوم چې دې کمانډ ترجمان ته پایپ لاین اړوي

راځئ چې د سکریپټ جوړولو لپاره چمتو شوي ځینې مثالونه وګورو.

مثالونه:

1- ټول pdfs بدل کړئ چې د متن فایلونو کې لیست شوي دي.

ls --directory “$@” | sed 's/^/"/' | sed 's/$/"/' | awk '{print "pdftotext",$0}' | sh

پدې حالت کې دا اړینه نده چې د محصول فایل غوره کړئ ځکه چې pdftotext په اوتومات ډول د اساس نوم او .txt استثمار سره د متن فایل رامینځته کوي که یوازې او که تاسو د یوې فایل سره کار کوئ.

2- راځئ چې ووایو چې موږ په عکس کې تاثیر پلي کول غواړو مګر پرته له اصلي تغیر څخه ، راځئ چې د وینډوز اغیزې سره یوه بیلګه وګورو چې د وینډوز XP لوګو لپاره ښه پیژندل شوی ، ځکه چې دا د ویوا اغیزو سره بیرغ دی (د دې اغیزې غوره تعریف کولو لپاره ، دا دی .png سره د پایله شوي عکس په توګه د کارولو وړاندیز شوی).

ls --directory “$@” | sed 's/^/"/' | sed 's/$/"/' | awk '{print FS="convert -wave 25x150

"$0"","\"\`dirname "$0"`/`basename "$0" | sed '"'"s/\\\\.[[:alnum:]]*$//"'"'`-wave.`basename "$0" |
rev | awk -F . \'"'"'\{print $1}\'"'"'\ | rev`'""'\"\'""' "}' | sh

یادونه: ګ passes شمیر پاسونه پدې ترتیب ترتیب شوي:

  • یو د فولډر ترلاسه کولو لپاره چیرې چې فایل د نوم سره موقعیت لري
  • بل د اساس نوم ترلاسه کولو لپاره ، مګر د وویل شوي فایل غزول لرې کول
  • بل د ویل شوي فایل معافیت ترلاسه کولو لپاره.

3- راځئ چې وګورو چې څنګه د فایلونو ګروپ نوم بدلولو لپاره د اړونده شمیره د نوم په مخ کیښودلو سره (عددي فرش)

ls --directory “$@” | sed 's/^/"/' | sed 's/$/"/' | awk '{print FS="mv "$0" '""'\"\'""'`dirname
"$0"`/"FNR"-`basename "$0"`'""'\"\'""' "}' | sh

د شمیر درج کولو لپاره ، داخلي عصري ژبه د "FNR" اختیار سره کارول شوې وه چې د محصول هره کرښه لیست کوي ، نو شمیره د متن دمخه یا وروسته کیدی شي.

راځئ وګورو چې د شمیرو مختاړی څنګه کیښودل شي (په پای کې یو شمیره ولیکئ ، مګر د معافیت دمخه) دا اختیار یوازې هغه وخت د اعتبار وړ دی که فایل لري.

ls --directory “$@” | sed 's/^/"/' | sed 's/$/"/' | awk '{print FS="mv "$0" \"`dirname
"$0"`/`basename "$0" | sed '\'s/\\\\.[[:alnum:]]*$//\''`-"FNR".`echo "$0" | rev | awk -F .
'""'\'\'""'{print $1}'""'\'\'""' | rev `\" " }' | sh

4- راځئ چې یو مثال وګورو چیرې چې موږ به ډاټا ته اړتیا ولرو یا د دندو ګروپ غوره کړئ ، د مثال په توګه پیښې په داسې حال کې چې موږ د ډیری پی ډی ایف فایلونو څخه د رمز محافظت لرې کوو چې ورته پټنوم لري. (پدې حالت کې به موږ د خبرو اترو بکس په توګه زینت وکاروو)

zenity --entry --hide-text --text "introduzca la clave de desbloqueo" > $HOME/.cat && ls
--directory “$@” | sed 's/^/"/' | sed 's/$/"/' | awk '{print FS="pdftk "$0" input_pw `cat
$HOME/.cat` output \"`dirname "$0"`/`basename "$0" .pdf`-unlock.pdf\" "}' | sh && rm
$HOME/.cat

د زینت نسخه پورې اړه لري ، د پټنوم لپاره اختیار یوازې word پاسورډ کیدی شي.

لکه څنګه چې تاسو ولیدل ، هدف دا دی چې د فایل یوه پیشو جوړه کړئ چې د کرښې په پیل کې به یوازې یو ځل رامینځته شي او بیا به له هغه وخته حذف شي کله چې د تبادلې بشپړیدل بشپړ شي.

5- بله اسانتیا دا ده ، کله چې موږ اړتیا لرو په .zip کې متعدد فایلونه ضایع کړو

ls --directory “$@” | sed 's/^/"/' | sed 's/$/"/' | awk '{print "unzip -x "$0" "}' | sh

اضافي نرخونه باید د هغه ځای سره جلا شي چیرې چې د "$ 0" اختیار کارول کیږي.
بېلګه
"unzip -x "$0" "

6- راځئ چې د پاسورډ سره pdf ساتلو لپاره مثال وګورئ ، د لوستلو اجازه ورکړئ مګر د چاپ کاپي یا نورو اختیارونو پروړاندې محافظت شوي ، (د ډیالوګ بکس کې لیست شوي اختیارونه به هغه وي چې په pdf کې به اجازه ورکړل شي ، که تاسو نه غواړئ اجازه ورکړئ له دې څخه ، هیڅ نه غوره کړئ).

zenity --separator " " --multiple --text "Seleccione los Opciones que quiere permitir" --column "Opciones" --list "Printing" "DegradedPrinting" "ModifyContents" "CopyContents" "ScreenReaders" "ModifyAnnotations" "AllFeatures" > $HOME/.cat && zenity --entry --hidetext --text "Teclee la contraseña de protección" > $HOME/.cat2 && ls --directory "$@" | sed 's/^/"/' | sed 's/$/"/' | awk '{print FS="echo \"pdftk \\\"`echo "$0"`\\\" output \\\"`dirname "$0"`/`basename "$0" .pdf`-locked.pdf\\\" allow `cat $HOME/.cat` owner_pw \"`cat $HOME/.cat2`\"\" | sh "}' | sh && rm $HOME/.cat $HOME/.cat2

د دې مثالونو سره دا کافي مثال دی چې څنګه دا اختیار د یو سکریپټ سره ډیری فایلونه بدلولو ، بدلولو یا نوم بدلولو لپاره وکاروي او د دوی لخوا په یو او بل سره نه اړول. د دې اختیار سره د حافظې مصرف لږ دی ، په هغه امر پورې اړه لري چې کارول کیږي ، ځکه چې دا دوی په ورته وخت کې نه بدلوي بلکه یو له بل وروسته.

دا اختیار خورا ګټور کیدی شي که چیرې موږ غواړو د ویډیوګانو ټوله ډله د نارینه کوډر سره بدل کړئ پرته له دې چې دا یو له دوی سره یوځای شي؛ تاسو کولی شئ د دې لپاره یو سکریپټ چمتو کړئ او دوی به یې وساتي ls --directory %F | sed 's/^/"/' | sed 's/$/"/' | awk '{print "script-convertir-video "$0" "}' | sh && zenity --info --text "Todas las conversiones han terminado"

FIN


د مقالې مینځپانګه زموږ د اصولو سره سمون لري ایډیټیک اخلاق. د غلطۍ راپور ورکولو لپاره کلیک وکړئ دلته.

15 نظرونه ، خپل پریږدئ

خپله نظر پرېږدئ

ستاسو د بریښنا لیک پته به خپره نه شي.

*

*

  1. د معلوماتو لپاره مسؤل: میګیوانجل ګاتین
  2. د معلوماتو هدف: د سپیم کنټرول ، د نظر مدیریت.
  3. قانونیت: ستاسو رضایت
  4. د معلوماتو راټولول: معلومات به د قانوني مکلفیت پرته دریمې ډلې ته نه لیږدول کیږي.
  5. د معلوماتو ذخیره: ډیټابیس د Occentus شبکې (EU) لخوا کوربه شوی
  6. حقونه: په هر وخت کې تاسو کولی شئ خپل معلومات محدود ، له سره تنظیم او حذف کړئ.

  1.   راميرو dijo

    ایا دا به ډیر نه وي ، مګر د منظم اظهار یا وینډ کارډونو په کارولو سره د دې ټولو ترسره کول خورا اسانه دي؟ زه نه پوهیږم چې د دې ترمینځ څه توپیر دی او ستاسو ژوند پدې کې دومره پیچلی کوي.

  2.   کروټو dijo

    حقیقت ټایډ شوی ، تاسو د لینکس کمانډونو لوی پوهه لرئ. ډیر ګټور!

    1.    KZKG ^ ګارا dijo

      هو ، زه پوهیږم چې موږ به دلته شاوخوا د هغه سره ډیر څه زده کړو hahaha.

  3.   هیکسبورګ dijo

    زه فکر کوم دا خورا اسانه دی:

    ls -d /path/to/folder/*.ext | په داسې حال کې چې دوتنه لوستل COMMAND "$ فایل" وکړئ؛ شوی

    د کمانډ پرځای تاسو کولی شئ هرڅه چې وغواړئ پریږدئ او دا کار کوي حتی که فایلونه خالي ځایونه ولري تر هغه چې تاسو د نرخونو ترمینځ فایل وساتئ. تاسو اړتیا نلرئ د دې لپاره سیډ وکاروئ یا اډک سره کمانډونه تولید کړئ. همدارنګه دا لږ پروسې پیلوي.

    1.    انخ dijo

      o:
      د I لپاره په $ (ls -d /path/a/folder/*.ext)؛ کمانډ وکړئ "$ i"؛ شوی؛

      1.    هیکسبورګ dijo

        دا ښه ښکاري ، مګر که د فایل نومونه تشه ولري دا کار نه کوي. 🙂

        1.    وهل شوی dijo

          په حقیقت کې ، هیکسبورګ د دې لپاره چې د محصول متن په پیل کې او د پای په پای کې د دې انتخاب سره د هرې کرښې لپاره قیمت ورکړل شوی وي:
          ls ایډیټریټری | سیډ / ^ / »/ '| سیډ 's / $ / »/'

          زه واضح کوم چې موندنه د فرعي لارښوونو لټون کولو لپاره کارول کیدی شي.

          1.    هیکسبورګ dijo

            مګر زما د چال سره تاسو اړتیا نلرئ. ls په هر لینک کې د بشپړ فایل نومونه اخلي او د کرښې په اوږدو کې لوستل لوستل کوي او د فایل نوم په فایل متغیر کې پریږدي ایا دا خالي ځایونه لري یا نه. تاسو یوازې د $ فایل شاوخوا چوکاټونه اړولو ته اړتیا لرئ کله چې دا په قوماندې کې کارول کیږي.

          2.    هوګو dijo

            زه موافق یم چې په موندلو کې دا ډیر پیچلی وي. راځئ چې دا مثال له مقالې څخه واخلو:

            ls --directory “$@” | sed 's/^/"/' | sed 's/$/"/' | awk '{print "pdftotext",$0}' | sh

            ورته د ورته په څیر لاسته راوړل کیدی شي ، او دا شاید ګړندی پرمخ ځي:

            find . -type f -print0 | xargs -0 pdftotext

            د دې ویلو سره ، مقاله ښه راغلاست ده ، تل به ښه وي چې د یو څه کولو متبادلو لارو په اړه زده کړه وکړئ.

        2.    انخ dijo

          که تاسو وګورئ $ i په قیمتونو کې دی. دا د سپینې ساحې تېښتې غیر ضروري ګرځوي.

          1.    هیکسبورګ dijo

            هو ، مګر $ () آپریټر پرته له دې چې د قیمتونو ایښودلو پرته د فایل نومونه پراخه کړي ، نو نو متغیر زه دمخه د کټ فایلونو نومونه اخلم. دا په یوه لارښود کې ټرمینل کې هڅه وکړئ چې په نومونو کې د ځایونو سره فایلونه ولرئ.

  4.   Leo dijo

    خورا ښه ، پیچلي ، مګر خورا په زړه پوري.

  5.   هیلینا_ریو dijo

    دا حیرانوونکی دی ، عالي !!!!

  6.   msx dijo

    عالي ، د GNU / لینکس پلاستيکیت هیڅ محدودیت نلري.

  7.   Natalia dijo

    ګرانو بلاګر ،

    زه نټالیا یم ، په پیپر بلاګ کې د مخابراتو مدیر. د دې موندلو وروسته ، زه ستاسو سره تماس کې یم ترڅو تاسو ته بلنه درکړم چې د پیپر بلاګ پروژې پیژندلو لپاره ، http://es.paperblog.com، د نوي ښاري ژورنالیزم خدمت. پیپر بلاګ یو ډیجیټل پلیټ فارم دی چې د بلاګ مجلې په څیر د راجستر شوي بلاګونو غوره مقالې خپروي.

    که مفهوم تاسو سره علاقه لري ، تاسو باید یوازې د خپل بلاګ وړاندیز وکړئ چې برخه واخلئ. مقالې به ستاسو د نوم / تخلص او پروفایل فایل سره وي ، په ورته ډول اصلي بلاګ ته ډیری لینکونه ، په پیل کې او د هر یو په پای کې. خورا په زړه پورې هغه د ډلې لخوا ټاکل کیدی شي چې په لومړي پا onه کې څرګند شي او تاسو کولی شئ د ورځې لیکوال په توګه وټاکل شئ.

    زه امید لرم چې تاسو د پروژې لخوا هڅول شوي یاست چې موږ د جنوري په 2010 کې په ورته لیوالتیا سره پیل کړی. یو نظر وګورئ او د نورو جزیاتو لپاره ماته لیکلو کې مه هیروئ.

    په درنښت او مینه ناکه پیغام ترلاسه کول ،
    Natalia

bool (ریښتیا)