Cosa potrebbe causare il fallimento del tocco con questo messaggio di errore?
touch: cannot touch `foo': No such file or directory
Si noti che un errore dovuto a autorizzazioni errate sembra diverso:
touch: cannot touch `foo': Permission denied
Cosa potrebbe causare il fallimento del tocco con questo messaggio di errore?
touch: cannot touch `foo': No such file or directory
Si noti che un errore dovuto a autorizzazioni errate sembra diverso:
touch: cannot touch `foo': Permission denied
Risposte:
La sequenza seguente provoca questo messaggio di errore:
$ mkdir foo
$ cd foo
In un altro terminale:
$ rm -r foo
Nel terminale precedente:
$ touch x
touch: cannot touch `x': No such file or directory
Naturalmente, anche altri eventi che comportano l'invalidazione dell'attuale directory di lavoro (CWD) di un processo che tenta di creare un file lì generano questo messaggio di errore.
rmdir ../foo
nello stesso terminale dovrebbe funzionare. Un'altra possibilità, senza comportarsi male filesystem: ln -s directory-that-doesnt-exist/foo foo; touch foo
.
Per me stava cercando di scrivere su un link simbolico che puntava a un file che non c'era più:
$ ln -s ~/doomed/file ~/mysymlink
$ rm ~/doomed/file
$ touch ~/mysymlink
$ touch: cannot touch `mysymlink': No such file or directory
Forse questo aiuterà qualcuno in futuro:
Ho avuto questo stesso problema quando ho rimosso l'unico file che esiste nella mia cartella con git rm
. Quindi git ha rimosso la cartella in cui mi trovavo e ogni tentativo di creare un file innesca questo errore perché la cartella non è più lì. Quindi ho dovuto ricreare la cartella manualmente, andare in essa ed eseguire touch
correttamente il comando.