մի հատ թեթև սկրիպտ ունեմ գրելու, ու չգիտեմ խի եմ հիմա սա ստեղ գրում, այլ ոչ թե Task-երիս App֊ում, բայց դե․
էս վերջում օգնում էի 42-ի ընկերներիցս մեկին անելու իրա մինիշելլ պրոեկտը․ թե ինչա դա երկար պատմություն ա , եթե լինք գտնեմ, վերջում կդնեմ, իսկ կարճ, երկու բառով ասաց c-ով mini bash ենք գրում․
ու թեստ անելու համար հաճախ պետք էր լինում, որ նույն բանը թեստ արվեր համ բաշում, համ մինիշելլում, դրա համար երկու պատուհան բաց ամեն մեկի մեջ նույն բանը գրում էինք․ միտք էկավ, որ մի հատ սկրիպտ գրել, որը կօգնի միանգամից մի անգամ մի տեղ գրել ու դիֆֆով տարբերություն նայել երկուսի միջև․ ոնց կարանք դա անենք․
հիմա cat հրամանի վրա օրինակը կբերեմ, հավես անեմ, էս քանի օրը կգրեմ, կգցեմ գիթհաբս էլ․
ինչպես գիտենք, մեր բոլոր պրոցեսսները գտնվում են /proc ֆոլդրի մեջ, ու եթե մենք բացում ենք ինչ որ տերմինալ, ավտոմատ բացվումա ինչ որ շելլ, որը ունի իրա ստանդարտ ինփութ, աութփութ ու էռոռի ֆդները (ֆայլ դեսկրիպտորները)
ու կարանք սենց բան անենք, վերցնենք մեր բաշի process id֊ին, որպեսզի իմանանք թե դա /proc ինչ folder֊ի մեջ ա։ ու միացնենք cat հրամանը, որ ստանդարտ ինփութից տեքստ սպասի։
ու մեկ ուրիշ տերմինալով բացենք /proc/{process_id}/fd ֊ն
կտեսնենք սա, ու երբ որ echo “gago” > 0 անենք, գագոն կգրվի մեր մյուս տերմինալում, որտեղ cat֊ը standart innputից բանա սպասում
հիմա տենամ ոնց կարամ արագ գիֆ սարքեմ, գցեմ ստեղ, տեսնեք ոնցա աշխատոի,
մոտ էսպիսի բան, հուսամ ստացվեց․
կստածի գիֆով record անելու համար կարաք օգտագործեք peek֊ը ։ )
հա, նպատակս էնա, մինիշելլի process_id ն վերցնեմ, ու սենց բան աշխատի
type command >_ …
Bash output: {…}
Minishell output: {…}
մնաց հավես անեմ ։)
Ero you’re genius bro👏🏼
https://youtu.be/aaZHCB5d6JI?si=zyY5DGpo3Kns8vMB 😅