Skip to content

Rename videos in bulk - linux commands

Unsolved Tips
  • Managing videos is a big hassle. To follow the 3-2-1 backup strategy, I want to keep a copy of my videos online. After some research, I found that GoPro is the easiest and cheapest option, costing around $25 or $50 per year for unlimited footage. (i have 20TB videos)Now, the goal is to upload all my files to GoPro.

    GoPro doesn’t provide a drive-like system, so I need to upload files directly to the GoPro website. Before doing that, I want to add folder names to the file names using a Linux command to rename them. so i can use their search to find files later.

    All my videos are stored in Synology Drive in the following format:

    Videos/date/filename1.mp4
    

    I only want to rename the MP4 files to have the format date-filename1.mp4. How can I do this using a command targeting all directory and subdirectories?

  • Managing videos is a big hassle. To follow the 3-2-1 backup strategy, I want to keep a copy of my videos online. After some research, I found that GoPro is the easiest and cheapest option, costing around $25 or $50 per year for unlimited footage. (i have 20TB videos)Now, the goal is to upload all my files to GoPro.

    GoPro doesn’t provide a drive-like system, so I need to upload files directly to the GoPro website. Before doing that, I want to add folder names to the file names using a Linux command to rename them. so i can use their search to find files later.

    All my videos are stored in Synology Drive in the following format:

    Videos/date/filename1.mp4
    

    I only want to rename the MP4 files to have the format date-filename1.mp4. How can I do this using a command targeting all directory and subdirectories?

    @Hari I don’t think the GoPro subscription is going to cut it here to be honest. The Web client will have limits and likely upload speeds will be incredibly slow.

    I addition, web uploading always seem to lack the ability to resume at last failure etc like your can get with SFTP and uploading 20Tb of videos will literally take forever.

    20Tb of videos seems excessive also. You’ll struggle to find any storage provider who will give you that level of storage, and GoPro are likely to have fair usage limits what will prevent you from uploading that sort of volume.

    The script you’re looking for in terms of preparing each upload (rename and move into directory) isn’t difficult, but do you know for sure that GoPro actually support this?

  • @Hari I don’t think the GoPro subscription is going to cut it here to be honest. The Web client will have limits and likely upload speeds will be incredibly slow.

    I addition, web uploading always seem to lack the ability to resume at last failure etc like your can get with SFTP and uploading 20Tb of videos will literally take forever.

    20Tb of videos seems excessive also. You’ll struggle to find any storage provider who will give you that level of storage, and GoPro are likely to have fair usage limits what will prevent you from uploading that sort of volume.

    The script you’re looking for in terms of preparing each upload (rename and move into directory) isn’t difficult, but do you know for sure that GoPro actually support this?

    @phenomlab i am looking for a linux command i will be running it on my synology to add directory name to the files, then i will be uploading manually 50 videos per day. i have the account and it is free why not trying for its full potential 😄

  • @phenomlab i am looking for a linux command i will be running it on my synology to add directory name to the files, then i will be uploading manually 50 videos per day. i have the account and it is free why not trying for its full potential 😄

    @Hari more than happy for you to try it, although I think it’s going to be rate limited and will go against their fair usage policy.

  • Could you please help me with a linux command to do rename files?

  • Could you please help me with a linux command to do rename files?

    @Hari Of course, but I need a bit more detail around how you want to name the directories you mentioned.

    As a starting point, you could so something like this

    You can use the find command along with bash to achieve this. Here’s an example command:

    find /path/to/root/directory -type f -name "*.mp4" -exec bash -c 'for file; do mv "$file" "$(date +"%Y%m%d")-${file##*/}"; done' bash {} +
    

    This command will find all .mp4 files under the specified root directory and its subdirectories, then rename them to the format date-filename1.mp4, where the date is in the format YYYYMMDD.

    Here’s a breakdown of what will happen

    find /path/to/root/directory -type f -name "*.mp4"
    
    • Finds all files with the extension .mp4 under the specified root directory.
    -exec bash -c '...' bash {} +
    
    • Executes the specified bash command for each found file.
    'for file; do mv "$file" "$(date +"%Y%m%d")-${file##*/}"; done'
    

    This bash script renames each file by appending the date and a hyphen to the original filename.

    Make sure to replace /path/to/root/directory with the actual path to your root directory.

  • @Hari Of course, but I need a bit more detail around how you want to name the directories you mentioned.

    As a starting point, you could so something like this

    You can use the find command along with bash to achieve this. Here’s an example command:

    find /path/to/root/directory -type f -name "*.mp4" -exec bash -c 'for file; do mv "$file" "$(date +"%Y%m%d")-${file##*/}"; done' bash {} +
    

    This command will find all .mp4 files under the specified root directory and its subdirectories, then rename them to the format date-filename1.mp4, where the date is in the format YYYYMMDD.

    Here’s a breakdown of what will happen

    find /path/to/root/directory -type f -name "*.mp4"
    
    • Finds all files with the extension .mp4 under the specified root directory.
    -exec bash -c '...' bash {} +
    
    • Executes the specified bash command for each found file.
    'for file; do mv "$file" "$(date +"%Y%m%d")-${file##*/}"; done'
    

    This bash script renames each file by appending the date and a hyphen to the original filename.

    Make sure to replace /path/to/root/directory with the actual path to your root directory.

    @phenomlab I’m trying to put the folder name at the beginning of each file. I found out about this by looking at a few renaming programs on Windows.

    I want to rename the files like this:

    Website/FolderName/file1.mp4
    Website/FolderName2/file10.mp4

    expected output targeting directories and sub directories:

    FolderName2-file10.mp4
    FolderName-file1.mp4
    

    I want the file names to be the folder name plus the file name, focusing on MP4 files.

    351cef3f-df60-4620-b146-2e5541bad80c-image.png

    9f71efa6-7ffc-4417-a418-5e4e73270b00-image.png

  • @phenomlab I’m trying to put the folder name at the beginning of each file. I found out about this by looking at a few renaming programs on Windows.

    I want to rename the files like this:

    Website/FolderName/file1.mp4
    Website/FolderName2/file10.mp4

    expected output targeting directories and sub directories:

    FolderName2-file10.mp4
    FolderName-file1.mp4
    

    I want the file names to be the folder name plus the file name, focusing on MP4 files.

    351cef3f-df60-4620-b146-2e5541bad80c-image.png

    9f71efa6-7ffc-4417-a418-5e4e73270b00-image.png

    @Hari i’m slightly confused. Are you looking to do this from Windows, or from Linux? The post below seems to point towards Linux, hence my response

    33dc5fff-395d-4131-8929-5c0ba0939a64-image.png

  • @Hari i’m slightly confused. Are you looking to do this from Windows, or from Linux? The post below seems to point towards Linux, hence my response

    33dc5fff-395d-4131-8929-5c0ba0939a64-image.png

    @phenomlab i am sharing examples from a windows machine and i am supposed to run these commands on Synology nas

  • @phenomlab i am sharing examples from a windows machine and i am supposed to run these commands on Synology nas

    @Hari How do you connect to the Synology? Is this via SMB or mapped drive? I’m thinking it may be easier to go down this route and use a batch copy/rename application in Windows.

  • @Hari How do you connect to the Synology? Is this via SMB or mapped drive? I’m thinking it may be easier to go down this route and use a batch copy/rename application in Windows.

    @phenomlab i think i am connected using SMB

    is this the batch rename software? https://www.bulkrenameutility.co.uk/

    21df3f50-d8c8-493a-a52f-18b0395b3852-image.png

  • @phenomlab i think i am connected using SMB

    is this the batch rename software? https://www.bulkrenameutility.co.uk/

    21df3f50-d8c8-493a-a52f-18b0395b3852-image.png

    @Hari Yes, that’s one (of many) I would recommend. It’s going to be easier to do this under Windows and the fact that you are already connected using SMB is a huge plus.


Related Topics
  • Arch Linux | Reflector

    Linux
    2
    2 Votes
    2 Posts
    104 Views
    I would like to add that if you type reflector --help in the console you can see the different options you can add to the configuration file. I changed the sort to rate, so the fastest mirrors get used first. I also changed my country to US, because that is where I live and everything else I left default. While doing some research, the Reflector service should fire up about once a week or at boot. It is hooked into pacman so it may refresh when you run the update command above. Location of the config file: /etc/xdg/reflector/reflector.conf
  • Windows 10 End of Life

    General
    10
    2 Votes
    10 Posts
    171 Views
    @phenomlab this looks very nice as well. It is nice that they keep the KDE Neon a rolling release so you will get those updated apps even though Ubuntu isn’t a rolling release. Is it a rolling distro? KDE neon is rolling for KDE software. The Ubuntu base OS is not, but certain packages will be updated as needed to support KDE software requiring newer library versions than what is provided by Ubuntu. Apps from the main repositories are not rolling either, and therefore can be up to two years old. Users are encouraged not to use them, and to instead get apps from Snap or Flatpak using KDE’s Discover app store. In neon, Discover is set up to only show apps from these sources, filtering out apps from the repositories.
  • 0 Votes
    1 Posts
    984 Views
    No one has replied
  • 1 Votes
    3 Posts
    420 Views
    @Panda said in Wasting time on a system that hangs on boot: Why do you prefer to use KDE Linux distro, over say Ubuntu? A matter of taste really. I’ve tried pretty much every Linux distro out there over the years, and whilst I started with Ubuntu, I used Linux mint for a long time also. All of them are Debian backed anyway I guess I feel in love with KDE (Neon) because of the amount of effort they’d gone to in relation to the UI. I agree about the lead and the OS statement which is why I suspect that Windows simply ignored it (although the Device also worked fine there, so it clearly wasn’t that faulty)
  • Killing Linux Zombie Processes

    Tips
    3
    7
    2 Votes
    3 Posts
    409 Views
    @DownPW odd indeed. Looks like it’s spawning, immediately dying, then spawning again.
  • Linux vs Windows - who wins ?

    Blog
    8
    4 Votes
    8 Posts
    461 Views
    @phenomlab LOL ah yes, I remember all of that. The good ole days!
  • help me configuring cron job for fof/sitemap - flarum

    Solved Configure
    36
    18 Votes
    36 Posts
    3k Views
    you are too fast
  • 2 Votes
    28 Posts
    3k Views
    @phenomlab said in Advantages and disadvantages of changing to Ubuntu?: @jac Yeah, I wouldn’t just leap into it unless you have a valid reason (such as the laptop no longer working and needing to be reinstalled). Probably better the devil you know currently. Absolutely mate, and generally as discussed that is the only time I have changed over to Ubuntu once the laptop has got slower. For now I will carry on with Windows, purchase the VPN & BitDefender in later October / early November and then see how all that runs for a few more months .