nomino
nomino copied to clipboard
Better error message for `error: No such file or directory (os error 2)`
I try to rename episode names of a series using a JSON map.
When running nomino
, it returns the following error:
$ nomino -ktmp renamed.json
error: No such file or directory (os error 2)
I cannot debug where the actual issue is. I would like a more verbose error message.
episodes.json
{
"Season 01/Episode 01.mp4": "Season01/Episode 01 - Echoes of Thunder.mp4",
"Season 01/Episode 02.mp4": "Season 01/Episode 02 - What Is Done.mp4",
"…": "…",
"Season 05/Episode 09.mp4": "Season05/Episode 09 - Infantis Sanguine.mp4"
}
╭─[/mnt/Series/The Dragon Prince]
╰──╼ls
renamed.json 'Season 01' 'Season 02' 'Season 03' 'Season 04' 'Season 05'
╭─[/mnt/Series/The Dragon Prince]
╰──╼ls Season\ 01/
'Episode 01.mp4' 'Episode 02.mp4' 'Episode 03.mp4' 'Episode 04.mp4' 'Episode 05.mp4' 'Episode 06.mp4' 'Episode 07.mp4' 'Episode 08.mp4' 'Episode 09.mp4' Subs
OS: Debian 12 nomino: v.1.3.4
Or another example I encountered:
nomino -pe "Season .*/.*S(\d+)E(\d+) \- (\w+.*) \(.*" "Season {:2}/Episode {:2} - {}"
[error] unable to rename 'Season 2/Avatar The Last Airbender (2005) - S02E05 - Avatar Day (1080p WEB-DL x265 RCVR).mkv': No such file or directory (os error 2)
[error] unable to rename 'Season 2/Avatar The Last Airbender (2005) - S02E10 - The Library (1080p WEB-DL x265 RCVR).mkv': No such file or directory (os error 2)
[error] unable to rename 'Season 2/Avatar The Last Airbender (2005) - S02E17 - Lake Laogai (1080p WEB-DL x265 RCVR).mkv': No such file or directory (os error 2)
…
$ ls
'Season 1' 'Season 2' 'Season 3'
$ ls Season\ 1/
'Avatar The Last Airbender (2005) - S01E01 - The Boy in the Iceberg (1080p WEB-DL x265 RCVR).mkv'
'Avatar The Last Airbender (2005) - S01E02 - The Avatar Returns (1080p WEB-DL x265 RCVR).mkv'
'Avatar The Last Airbender (2005) - S01E03 - The Southern Air Temple (1080p WEB-DL x265 RCVR).mkv'
'Avatar The Last Airbender (2005) - S01E04 - The Warriors of Kyoshi (1080p WEB-DL x265 RCVR).mkv'
Still, it seems to work when I test it.
nomino -pet "Season .*/.*S(\d+)E(\d+) \- (\w+.*) \(.*" "Season {:2}/Episode {:2} - {}"
| Season 1/Avatar The Last Airbender (2005) - S01E01 - The Boy in the Iceberg (1080p WEB-DL x265 RCVR).mkv | Season 01/Episode 01 - The Boy in the Iceberg.mkv |
| Season 1/Avatar The Last Airbender (2005) - S01E02 - The Avatar Returns (1080p WEB-DL x265 RCVR).mkv | Season 01/Episode 02 - The Avatar Returns.mkv |
| Season 1/Avatar The Last Airbender (2005) - S01E03 - The Southern Air Temple (1080p WEB-DL x265 RCVR).mkv | Season 01/Episode 03 - The Southern Air Temple.mkv |
| Season 1/Avatar The Last Airbender (2005) - S01E04 - The Warriors of Kyoshi (1080p WEB-DL x265 RCVR).mkv | Season 01/Episode 04 - The Warriors of Kyoshi.mkv |
In this case I know I should add the -k
parameter. We could add an error message like: Please add -k
parameter. Adding the -k
parameter in the first example does not work.