Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Ask Slashdot: Command line interfaces, what is out there?

Mars729 (3469921) writes | about 4 months ago


Mars729 (3469921) writes "GUIs are walled gardens in that features available in one piece of software is not available to other pieces of software. However, there is software out there with command-line options that can make software features accessible to power users and programmers.

Some important ones I have uncovered are:
Exiftool: A command-line application that can read/write almost any kind of metadata contained in almost any filetype
Imagemagick: This and similar software like GraphicsMagick is a full-feature toolkit for displaying, converting and editing image files.
Irfanview: Like Imagemagick but faster, although it has much fewer features.
FFMpeg: For video files
VLC: For audio and video files
Aspell: A command line spell checker
Google Static Maps API: A URL with coordinates, markers, zoom levels and other options to show a custom map from Google Maps. (I just uncovered this: no need to learn KML!)

Less useful but still useful are command shells. These provide file management mostly. I believe some of them may allow for sending and retrieving email messages.
Also useful but less accessible and with a steeper learning curve are software with APIs and scripting. Examples would be Visual Basic for Applications in office software and groovy scripting for Freeplane.

What else is out there?

I am currently creating a GUI that provides menuing tools, grids for database-like stuff, a non-hierarchical data structure, a set of commands and a media organizer. I am currently trying to get the media organizer working. Slow work, I don't have much free time to work on it. If I ever finish this thing it will to a limited extent allow a power user to create their own customized GUI with a minimum of programming. For myself, I want it to manage my nature observations ... checklists, photos etc. The media organizer (photos plus voice files mostly) is what I am most keen on — the photo organizers out there generally suck."


Before the flaming starts (1)

bio_end_io_t (2771123) | about 4 months ago | (#45817711)

"Less useful but still useful are command shells." A command shell is only as useful as the CLI support. If you're using Windows, whose programs tend to have weak CLI support, then a command shell will be less useful.

"What else is out there?"

I recommend searching for the "tacobell programming" article. I use linux/bsd systems and almost all programs support CLI's. By using pipes, you can string several commands together, using one program's output as the next program's input, all on the command line. It's very, very powerful. There are so many programs I just take for granted, that when I use a Windows machine, I feel neutered without programs like grep, vi, dd, ctags, cat, head, tail, netstat, nmap, locate, less, sed... the list goes on and on (note, there are Windows versions of some of these programs, and they are available with cygwin for Windows, which provides a sort of decent unix-like interface for the Windows OS).

Re:Before the flaming starts (1)

Mars729 (3469921) | about 4 months ago | (#45825093)

Hmm. I looked at the linux commands you gave and it seems they can be divided into four major categories: File management, network/hardware/OS administration, text/data manipulation and programming. Of these categories, text and data manipulation most interests me. Some of the text manipulation tools could be useful in importing my website into my software and using my software to cut down the time required to maintain and update my webpage. My webpage is all about resources for amateur naturalist with the bulk of the material on field guides. One program with linux software the overhead required to make them work under Windows. DigiKam would have been my photo organizer of choice if it loaded and operated faster. (It doesn't help that it requires a linux emulator of sorts to run under Windows) Open Office is not as bad but still rather sluggish. Bloatware. Command line utilities from linux would likely be OK though.

Re:Before the flaming starts (1)

bio_end_io_t (2771123) | about 4 months ago | (#45829357)

If you can tell me more specifically what you want to accomplish, or the format of the data you are trying to manipulate, I can (hopefully!) point you towards more specific tools—there are just too many command line tools for data/text manipulation in linux, though most are available through cygwin (still a bit of a hack solution, but if Windows works best for you as an OS, then we'll find a solution for you in Windows).

Also, OpenOffice (or Libreoffice) is just another office suite, like MS Office, so it's still pretty bloated.
Check for New Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account