Czyli autouzupełnianie nazw plików linuksa kończy się na „niewidocznym” „\”?


0

Plik, który wyświetla się w graficznym eksploratorze plików lub lsedytuje w terminalu, wygląda jak „LLCP2015.ASC”, ale za każdym razem, gdy terminal automatycznie wykonuje (przez tab) polecenie, tak jakby less LLCP2015.ASCfaktycznie kończyło wyglądać jak

„mniej LLCP2015.ASC \”
Zwróć uwagę na końcowy znak ucieczki i dodatkowe spacje (mówię, że są dodatkowe spacje, ponieważ w tym miejscu marchewka kończy się po autouzupełnianiu). Nigdy wcześniej tego nie widziałem i jestem ciekawy, czy ktoś wie, co to jest i czy istnieją jakieś specjalne względy, a następnie próbując dopasować ten plik do znaku globlub regex? Dzięki.

Ten plik to publicznie dostępne pliki danych, które można pobrać tutaj (w folderze Data Files / 2016 BRFSS Data (ASCII) [ZIP]) i używamcent os 7

Odpowiedzi:


1

Oznacza to po prostu, że nazwa pliku kończy się spacją. Spróbuj tego:

ls {file} | wc -c

Teraz policz znaki, które widzisz i porównaj z podaną liczbą (minus jeden, aby wziąć pod uwagę dodaną kreskę). Możesz także użyć:

ls {file} | hexdump -C

ls somefilespace.txt\  | hexdump -C
00000000  73 6f 6d 65 66 69 6c 65  73 70 61 63 65 2e 74 78  |somefilespace.tx|
00000010  74 20 0a                                          |t .|

To 20końcowa przestrzeń. To 0atylko LF dodany przez, lsa nie część nazwy pliku,

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.