Ho un carico di filela creazione di directory dal nome del file e spostare bash
BR0200.aaa.tsv
BR0200.bbb.tsv
BR0200.ccc.tsv
BR0210.aaa.tsv
BR0210.bbb.tsv
BR0210.ccc.tsv
W0210.aaa.tsv
W0210.aaa.tsv
W0210.aaa.tsv
vorrei creare una serie di directory sulla base della prima parte del nome del file fino al primo ''
BR0200
BR210
W0210
e quindi spostare i file associati nelle directory corrette (vale a dire tutti BR0200. * File in directory BR0200).
Ho avuto una pugnalata a uno script bash ma continuo a ricevere errori. Qualsiasi consiglio sarebbe stato accolto con gratitudine.
#!/bin/bash
for file in BR* W0*; do
dir = "${file%%.*}"
if [-e $dir];then
mv "$file" "$dir"
else
mkdir -p "$dir"
mv "$file" "$dir"
fi
done
Ci scusiamo se questa è una domanda di base. Ho provato a cercare sul Web, ma senza risultato.
@owlstead Cosa intendi? –
@owlstead globbing è una delle funzioni più utili che le shell hanno da offrire. – jordanm
@jordanm hai ragione, ovviamente, rimuovendo il commento. –