Re: Script per rinominare e creare link simbolici.
Il giorno 30 dicembre 2010 19:22, Paolo Nicorelli ha scritto: > Diciamo che le puoi trovare o nell'esperienza o goggleando con i > termini appropriati. > La Guida a bash (la G maiuscola non è un caso) è anche pacchettizata, > il pacchetto si chiama abs-guide e ti scarica gli html da navigare. > > > l'unico problema è che eseguo lo script ogni minuto .. quindi vorrei > evitare > > di eliminare tutte i link per poi ricrearli... > > qualche idea ? > > dipende da come sono strutturati i files... se c'è un solo livello di > subdirectory puoi ciclare tutti i link e usare un comando tipo > check=$(find $linkdir -iname attiv[oa] | wc -l) [dove $linkdir è il > path a cui punta il link] > in check avrai quindi il numero di files trovati nel caso sia 0 > puoi cancellare il link. > > Però se hai tante subdirectory questo discorso non vale :\ > > > la guida ABS la conosco, ma certi particolari sfuggono ! grazie ancora. ciao, ff77 ps: Buon Anno
Re: Script per rinominare e creare link simbolici.
2010/12/28 Fernando ff77 : > dove trovo maggior informazioni su queste funzioni ? non sapevo proprio che > esistesse. Diciamo che le puoi trovare o nell'esperienza o goggleando con i termini appropriati. La Guida a bash (la G maiuscola non è un caso) è anche pacchettizata, il pacchetto si chiama abs-guide e ti scarica gli html da navigare. > l'unico problema è che eseguo lo script ogni minuto .. quindi vorrei evitare > di eliminare tutte i link per poi ricrearli... > qualche idea ? dipende da come sono strutturati i files... se c'è un solo livello di subdirectory puoi ciclare tutti i link e usare un comando tipo check=$(find $linkdir -iname attiv[oa] | wc -l) [dove $linkdir è il path a cui punta il link] in check avrai quindi il numero di files trovati nel caso sia 0 puoi cancellare il link. Però se hai tante subdirectory questo discorso non vale :\ -- Per REVOCARE l'iscrizione alla lista, inviare un email a debian-italian-requ...@lists.debian.org con oggetto "unsubscribe". Per problemi inviare un email in INGLESE a listmas...@lists.debian.org To UNSUBSCRIBE, email to debian-italian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/aanlktinbuts7mkllw2fp1aggjs2p9vkagd+hpyyx1...@mail.gmail.com
Re: Script per rinominare e creare link simbolici.
Il giorno 28 dicembre 2010 15:14, Paolo Nicorelli ha scritto: > > Più o meno fa quello che chiedi, considero che in URGENTI ci siano > solo link... così parto eliminando tutto e ricreandomi i link. > > Testato non è proprio la parola giusta per definire quello che c'è > scritto qui sotto :) > > -- > #!/bin/bash > > workdir="/dir/di/test" > urgenti="/dir/urgenti" > > rm $urgenti/* > > for fullfilepath in $(find $workdir -iname 'attiv[oa]') > do >dirname=$(dirname $fullfilepath) >filename=$(basename $fullfilepath) >mv $fullfilepath $dirname/Attivo >ln -s $dirname $urgenti > done; > > per prima cosa vorrei ringraziarti ... mi hai risparmiato 3 notti insonni circa... perchè non sapevo dell'esistenza di $(dirname... dove trovo maggior informazioni su queste funzioni ? non sapevo proprio che esistesse. grazie di cuore. l'unico problema è che eseguo lo script ogni minuto .. quindi vorrei evitare di eliminare tutte i link per poi ricrearli... qualche idea ? ciao, ff77
Re: Script per rinominare e creare link simbolici.
2010/12/28 Fernando ff77 : > Ciao a tutti, > dovrei creare uno script per: > > 1- ricercare tutti i file che si chiamano Attivo, attivo, attiva, ATTIVA... > 2- rinominarli tutti in Attivo > 3- nella cartella URGENTI creare link simbolici a tutte le cartelle che > contengono il file "Attivo" , attenzione, devo linkare la cartella, non il > file. > 4- ho il problema che se in una cartella cancellano il file Attivo, devo > anche io eliminare il link simbolico. Più o meno fa quello che chiedi, considero che in URGENTI ci siano solo link... così parto eliminando tutto e ricreandomi i link. Testato non è proprio la parola giusta per definire quello che c'è scritto qui sotto :) -- #!/bin/bash workdir="/dir/di/test" urgenti="/dir/urgenti" rm $urgenti/* for fullfilepath in $(find $workdir -iname 'attiv[oa]') do dirname=$(dirname $fullfilepath) filename=$(basename $fullfilepath) mv $fullfilepath $dirname/Attivo ln -s $dirname $urgenti done; -- Per REVOCARE l'iscrizione alla lista, inviare un email a debian-italian-requ...@lists.debian.org con oggetto "unsubscribe". Per problemi inviare un email in INGLESE a listmas...@lists.debian.org To UNSUBSCRIBE, email to debian-italian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/aanlktin8hnrootfem7u+_vwor8npz0xx2s-frz-ne...@mail.gmail.com
Script per rinominare e creare link simbolici.
Ciao a tutti, dovrei creare uno script per: 1- ricercare tutti i file che si chiamano Attivo, attivo, attiva, ATTIVA... 2- rinominarli tutti in Attivo 3- nella cartella URGENTI creare link simbolici a tutte le cartelle che contengono il file "Attivo" , attenzione, devo linkare la cartella, non il file. 4- ho il problema che se in una cartella cancellano il file Attivo, devo anche io eliminare il link simbolico. il punto 1, l'ho risolto con un bel find ... il punto 2 penso si possa fare con sed devo studiarlo, forse già inserirlo nell'exec del find precendente ?! punto 3 e 4 ... non so da dove partire ciao a tutti e buone ferie... a chi le fa ciao, ff77