"/example" 폴더에 포함된 "*_jony" 폴더를 모두 "/jony"라는 새 디렉터리로 이동하고 싶습니다. 여러 가지 방법을 시도했지만 성공하지 못했습니다! 도움을 받는 것이 좋을 것 같습니다. 감사해요!
답변1
mv path_to_example_dir/*_jony /jony
답변2
자주 수행해야 하는 작업인 경우 스크립트를 사용하여 수행하는 것이 유용할 수 있습니다. 다음은 작업을 수행하는 빠르게 조립된 Bash 스크립트입니다.
#!/bin/sh
dir_str=$1
src_dir=$2
dest_dir=$3
ret_code=0
if [ ! -e $src_dir ] ; then
echo "Could not find source directory $src_dir."
let "ret_code += 1"
fi
if [ ! -e $dest_dir ] ; then
echo "Could not find destination directory $dest_dir. (Use mkdir to create.)"
let "ret_code += 2"
fi
if [ $ret_code -eq 0 ] ; then
for dir_to_move in $src_dir/*$dir_str ; do
echo "For '$dir_to_move':"
cmd="mv $dir_to_move $dest_dir"
echo "Executing: $cmd"
$cmd
done
fi
exit $ret_code
선호하는 편집기를 사용하여 스크립트를 작성하십시오.
그다지 고급은 아니지만 이동하려는 디렉터리 이름과 원본 및 대상 디렉터리에 텍스트를 지정할 수 있으므로 어느 정도 유연성을 제공합니다. 스크립트가 포함된 파일의 이름을 "mv_dirs.sh"로 지정하고 이를 실행하여 명시된 목표를 달성하려면 다음과 같이 입력합니다.
sh mv_dirs.sh _jony/example/jony
이 기능을 실제로 구현하려면 일반 사용자에게는 일반적으로 없는 루트(/) 디렉터리에 대한 쓰기 권한이 필요합니다.