Czy istnieje wygodny sposób na usunięcie dowolnego rozszerzenia z nazwy pliku, coś w stylu à la bash ${i%%.*}
? Czy pozostaję przy moim przyjacielu sed
?muszla rybna: Czy można wygodnie zdejmować rozszerzenia?
6
A
Odpowiedz
7
Nie. Ryba ma znacznie mniejszy zestaw funkcji niż bash, powołując się na poleceniach zewnętrznych:
$ set filename foo.bar.baz
$ set rootname (echo $filename | sed 's/\.[^.]*$//')
$ echo $rootname
foo.bar
6
Jeśli znasz rozszerzenie (np _bak, wspólna USECASE) Jest to prawdopodobnie bardziej wygodne:
for f in (ls *_bak)
mv $f (basename $f _bak)
end
2
z string match
funkcja wbudowana w ryby można zrobić
set rootname (string match -r "(.*)\.[^\.]*\$" $filename)[2]
meczu ciąg zwraca listę 2 pozycji. Pierwszy to cały łańcuch, a drugi to pierwsze dopasowanie do wyrażenia regularnego (rzeczy wewnątrz nawiasów w regexie). Tak więc, pobieramy drugą z [2].
Powiązane problemy
- 1. Czy można "ukryć" rozszerzenia językowe?
- 2. Czy można pisać rozszerzenia do debuggera Delphi?
- 3. Czy można używać rozszerzenia .AsParallel w PCL?
- 4. Czy masz rozszerzenia Emacs?
- 5. Jak wygodnie pracować w dużym projekcie (Android)?
- 6. Czy można monitorować ruch HTTP w Chrome przy użyciu rozszerzenia?
- 7. Czy można wywołać funkcję rozszerzenia Java z Xalan na Androida?
- 8. Moja pierwsza metoda rozszerzenia, czy można ją napisać lepiej?
- 9. Czy można renderować plik bez rozszerzenia .jsp jako strony JSP?
- 10. Nie można przetestować rozszerzenia dostawcy dokumentu
- 11. Czy metoda rozszerzenia jest bezpieczna?
- 12. Nie można wywołać metody z rozszerzenia UIView
- 13. Nie można utworzyć rozszerzenia bez roli administratora
- 14. Strona rozszerzenia rozszerzenia Chrome Pokaż stronę Strona
- 15. Jak uruchomić program Java GUI wygodnie dla użytkownika końcowego?
- 16. Budowanie rozszerzenia/rozszerzenia Internet Explorer?
- 17. Czy rozszerzenia do Chrome otwierają ramkę iframe?
- 18. Czy gradle rozszerzenia obsługują leniwą wycenę nieruchomości?
- 19. Czy AVURLAsset może działać bez rozszerzenia pliku?
- 20. Wdrażanie rozszerzenia IE9
- 21. Czy można tworzyć rozszerzenia dla Pythona/PHP/Perl za pomocą Go?
- 22. Czy dopuszczalne jest stosowanie metod rozszerzenia dla klasy, którą można zmodyfikować?
- 23. Czy można wykluczyć niektóre rozszerzenia plików w "formacie przy zapisie" w kodzie Visual Studio?
- 24. Nie można zbudować natywnego rozszerzenia gem (mkmf (LoadError)) - Ubuntu 12.04
- 25. Nie można zarejestrować rozszerzenia org.sonar.plugins.cobertura.CoberturaSensor z wtyczki 'cobertura'
- 26. Nie można zastąpić klasy __init__ z rozszerzenia Cython
- 27. Nie można usunąć rozszerzenia widoku dzisiaj z iOS
- 28. Metoda rozszerzenia C#, aby sprawdzić, czy wyliczenie ma ustawiony znacznik
- 29. Czy Java obsługuje rozszerzenia klas podobne do Swift?
- 30. Rozszerzenia PSake?
Dzięki, to jest to, co podejrzewałem. Dobrze, że napisałeś obejście :) –