• The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
Menu
  • The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
  • Mass Rename of IFS Files

    September 30, 2009 Hey, Ted

    I find Qshell a powerful tool for manipulating IFS files, but some Qshell features make me long for my MS DOS batch file programming days. A case in point is the ability to rename files in mass. Let me show you what I mean.

    I want to rename the files with a .txt extension so that they have a .csv extension instead. I only want to rename .txt files, and I only want to rename the files in a certain directory. In MS DOS, I would have used a rename command with wildcards in both arguments.

    ren *.txt *.csv
    

    Try the same thing in Qshell and you get an error.

    mv *.txt *.csv
    mv: 001-0085 Too many arguments specified on command.
    mv: 001-3017 usage:
        mv [-f | -i] source_file target_file
        mv [-f | -i] source_file ... target_dir
    

    Please don’t tell me that I have no choice but to rename the files one by one.

    –Chuck

    The Unix shells predate MS DOS, Chuck, so Microsoft had the advantage of circumventing some of the Unix shells’ less desirable features. I don’t know if they purposely did so or not.

    But to answer your question, you can rename files in bulk. Use the following three-line script.

    for file in *.txt; do mv "$file" "$(basename $file txt)csv"; done
    

    Here’s how it works:

    The “for” loop runs once for each file that has a .txt extension. The basename utility returns the name of a file without the trailing txt extension. That is, “customer.txt” becomes “customer.”. Yes, the period is not stripped off. Qshell appends “csv” to the name.customer.csv. and passes it to the mv command, which interprets it as the second parameter.

    mv customer.txt customer.csv
    

    The mv renames the file.

    If file names can have blanks in them, use this command sequence instead.

    for file in *.txt; do base=$(basename "$file" txt); mv "$file" "$base"csv; done
    

    –Ted



                         Post this story to del.icio.us
                   Post this story to Digg
        Post this story to Slashdot

    Share this:

    • Share on Reddit (Opens in new window) Reddit
    • Share on Facebook (Opens in new window) Facebook
    • Share on LinkedIn (Opens in new window) LinkedIn
    • Share on X (Opens in new window) X
    • Email a link to a friend (Opens in new window) Email

    Tags:

    Sponsored by
    i-Rays

    i‑Rays learns how your IBM i behaves; not just how it performs. Detect deviations hours before incidents form and eliminate alert fatigue with true behavioral observability.

    Traditional monitoring tells you when something breaks. i‑Rays tells you why it’s about to break. By baselining behavioral patterns across jobs, subsystems, and queues, i‑Rays highlights the most likely root cause long before users feel the impact. It’s proactive, noise‑free, and built for mission‑critical IBM i environments.

    Request a Demo

    Share this:

    • Share on Reddit (Opens in new window) Reddit
    • Share on Facebook (Opens in new window) Facebook
    • Share on LinkedIn (Opens in new window) LinkedIn
    • Share on X (Opens in new window) X
    • Email a link to a friend (Opens in new window) Email

    Sponsored Links

    System i Developer:  RPG & DB2 Summit in Minneapolis, October 13-15; 3 days of serious training
    Manta Technologies:  Fall Sale on i training courses! Order by October 15 and SAVE 25%
    Halcyon Software:  Automated operations software for IBM i i5/OS - for as little as $25 a day!

    IT Jungle Store Top Book Picks

    Easy Steps to Internet Programming for AS/400, iSeries, and System i: List Price, $49.95
    The iSeries Express Web Implementer's Guide: List Price, $49.95
    The System i RPG & RPG IV Tutorial and Lab Exercises: List Price, $59.95
    The System i Pocket RPG & RPG IV Guide: List Price, $69.95
    The iSeries Pocket Database Guide: List Price, $59.00
    The iSeries Pocket SQL Guide: List Price, $59.00
    The iSeries Pocket Query Guide: List Price, $49.00
    The iSeries Pocket WebFacing Primer: List Price, $39.00
    Migrating to WebSphere Express for iSeries: List Price, $49.00
    Getting Started With WebSphere Development Studio Client for iSeries: List Price, $89.00
    Getting Started with WebSphere Express for iSeries: List Price, $49.00
    Can the AS/400 Survive IBM?: List Price, $49.00
    Chip Wars: List Price, $29.95

    Subprocedure Return Values–Food for Thought When PC5250 Run the Same Doesn’t Run

    Leave a ReplyCancel reply

Volume 9, Number 30 -- September 30, 2009
THIS ISSUE SPONSORED BY:

WorksRight Software
Help/Systems
Halcyon Software

Table of Contents

  • Subprocedure Return Values–Food for Thought
  • Mass Rename of IFS Files
  • When PC5250 Run the Same Doesn’t Run

Content archive

  • The Four Hundred
  • Four Hundred Stuff
  • Four Hundred Guru

Recent Posts

  • Will Power Chips Get A Converged Arm Instruction Set Like Z Mainframe CPUs?
  • Thinking About Moving IBM i To The Cloud? Don’t Start With The Quote
  • Precisely To Add Ransomware Protection In MIMIX 11
  • It’s D-Day For Cybersecurity, AI Firms Warn
  • IBM i PTF Guide, Volume 28, Number 30
  • Oracle Dips A Toe Into IBM’s EBCDIC World
  • When Your Small IBM i Team Is Really A Team Of One
  • Guru: Putting Failure Handling In Its Place
  • Inside The Security Enhancements In ACS
  • IBM i PTF Guide, Volume 28, Number 28: A Crazy Number of Security Vulnerability Patches

Subscribe

To get news from IT Jungle sent to your inbox every week, subscribe to our newsletter.

Pages

  • About Us
  • Contact
  • Contributors
  • Four Hundred Monitor
  • IBM i PTF Guide
  • Media Kit
  • Subscribe

Search

Copyright © 2025 IT Jungle