Как я могу удалить все файлы .swp? Я пытался, rm *.swpно я получилrm: *.swp: No such file or directory
rwxr-xr-x 16 teacher staff 544 Jan 17 13:19 . drwxr-xr-x 19 teacher staff 646 Jan 16 12:48 .. -rw-r--r-- 1 teacher staff 20480 Jan 17 09:48 .6-1-period-2.txt.swp -rw-r--r-- 1 teacher staff 16384 Jan 17 09:05 .6-2-period-6.txt.swp -rw-r--r--@ 1 teacher staff 6148 Jan 15 16:16 .DS_Store -rw-r--r-- 1 teacher staff 12288 Jan 16 19:46 .grade8.txt.swp -rw-r--r-- 1 teacher staff 11070 Jan 17 09:48 6-1-period-2.txt
Пожалуйста, всегда включайте вашу ОС. Решения очень часто зависят от используемой операционной системы. Вы используете Unix, Linux, BSD, OSX, что-то еще? Какая версия?
terdon 10 лет назад
0
3 ответа на вопрос
7
terdon
What you wanted to do is
rm .*swp
The * does not match files starting with a . unless you turn on dotglob (assuming you are using bash):
$ ls -la -rw-r--r-- 1 terdon terdon 0 Jan 17 05:50 .foo.swp $ ls *swp ls: cannot access *swp: No such file or directory $ shopt -s dotglob $ ls *swp .foo.swp
6
slackmart
If you say: files are hidden, then they start with a dot (.), so try:
find . -type f -name ".*.swp" -exec rm -f {} \;
With this approach you're looking for all hidden files into the current directory and subdirectories. If you want delete the hidden files of just the current directory, a simple rm -f .*.swp works ok
globstar намного проще в bash 4+, `rm ** /. *. swp` (с` shopt -s globstar` в исходном файле bash или в вашем текущем экземпляре оболочки)
BroSlow 10 лет назад
1
0
Gaurav Joseph
Try using this
find . -type f -name "*.swp" -exec rm -f {} \;
-name "FILE-TO-FIND" : File pattern. -exec rm -rf {} \; : Delete all files matched by file pattern. -type f : Only match files and do not include directory names.
`-f` - это сила, просто используйте ее, если хотите
Matteo 10 лет назад
0
`rm -r` имеет смысл только для каталогов, так как вы удаляете файлы` -type f`, это не имеет смысла
Matteo 10 лет назад
0