Я предполагаю, что вы используете «find», потому что у вас есть файлы pdf в подкаталогах, или вы просто использовали бы «mv * .pdf ../Documents». Сначала я бы сделал следующее, просто чтобы убедиться, что команда делает то, что я хочу.
найти. -тип f | grep dat $
Затем я бы заполнил оставшуюся часть команды с помощью xargs
find. -тип f | grep dat $ | xargs mv ../Documents
По привычке мне нравится помещать «grep» и «xargs» в конце команд, где я уже знаю результат и что они делают.
Чистая оболочка должна работать, если количество столбцов меньше 26:
while IFS=, read a b c d e f g h i j k l m n o p q r s t u v w x y z
do
printf '%s,' $b $a $c $d $g $j $m $p $s $v $y
printf '\b \b\n'
done < joinedfile.csv
Если есть больше чем 26 столбцов, попробуйте это:
tr, ' ' < joinedfile.csv |
while read a; do
set -- $a
printf '%s,' $2 $1 $3
while [ "$4" ] ; do
shift 3
printf '%s,' "$1"
done
printf '\b \b\n'
done