좋아, 대시로 시작하는 많은 파일이 있습니다-. 어느 것이 좋지 않은데 ... 이름을 바꾸고 싶습니다. 내 특별한 경우에 나는 그들 앞에 캐릭터를 넣고 싶습니다.
작동 해야하는 다음 줄을 찾았지만 대시로 인해 작동하지 않습니다.
for file in -N*.ext; do mv $file x$file; done
내가 넣을 경우 echo
의 앞에 mv
나는 한 무리를 얻을 수
mv -N1.ext x-f1.ext
mv -N2.ext x-f2.ext
물론 첫 번째 파일 이름은 옵션이라고 생각할 것입니다. 그래서 내가 제거 echo
하고 실행할 때 나는 단지 많은 무리를 얻습니다.
mv: illegal option -- N
나는 그것을 바꾸려고 노력했다.
for file in -N*.ext; do mv "$file" "x$file"; done
그러나 따옴표는 무시되는 것 같습니다. 작은 따옴표를 사용하려고했지만 변수가 확장되지 않았습니다 ... 여기서 어떻게해야합니까?
업데이트 : 이제 인용문을 인용하려고했습니다. 이처럼 :
for file in -N*.ext; do mv '"'$file'"' '"'x$file'"'; done
그리고 그것을 반향 할 때, 그것은 정확 해 보이지만, 실제로 그것을 실행할 때 나는 단지
mv: rename "-N1.ext" to "x-n1.ext":: No such file or directory
나는 지금 이것을하는 방법에 대한 단서가 없다 ... 한숨
"-r"을 사용하여 CLI로 시작하는 이름을 가진 파일을 제거하는 방법 , 리눅스 앞으로 대시 열려있는 파일에 어떻게 , 하이픈으로 시작하는 이름있는 파일 이름을 바꿀 수 없습니다 , 어떻게 이름이 시작하는 파일을 삭제합니까 "-"(하이픈 일명 대시 또는 빼기)?
—
phuclv