for file in *.mp3; do \ eval $( id3tool "$file" | sed 's/^[^:]* //; s/:[\t ]*/="/; s/[[:cntrl:]]//g; /./!d; s/ *$/"/' ) \ { [ "$Artist" -o "$Album" ] && dir="$Artist/$Album/" ; } || { [ "$Artist" ] && dir="$Artist/" ; } || continue ; \ mkdir -p "$dir" ; mv "$file" "$dir/" ; \ done
It uses id3tool to read the ID3? tag, instructs SED to massage the information into something that looks like Shell script, executes that to put values into variables, checks which variables are set, and if at least an artist name (optionally also album name) is given, moves the file into that directory. (It's rather a mouthful for a oneliner, but hey.)
for uid in `gpg --with-colons --list-keys| grep "^pub" | awk -F: '{print $5}'`; do gpg --refresh $uid; sleep 5; done
Alter the number after sleep(1) to change the speed of the refresh. Paid surveys BPO services BPO services Media Transcription BPO India Data Processing Technical Writing Seo Services Callcenter India
3 pages link to BashOneLiners: