Learning Linux Shell Scripting
上QQ阅读APP看书,第一时间看更新

When not to use scripts

Shell scripts have certain advantages over compiler-based programs, such as C or C++ language. However, Shell scripting has certain limitations as well.

The following are the advantages:

  • Scripts are easy to write
  • Scripts are quick to start and easy for debugging
  • They save the time of development.
  • Tasks of administration are automated
  • No additional setup or tools are required for developing or testing Shell script

The following are the limitations of Shell scripts:

  • Every line in Shell script creates a new process in the operating system. When we execute the compiled program such as C program, it runs as a single process for the complete program.
  • Since every command creates a new process, Shell scripts are slow as compared to compiled programs.
  • Shell scripts are not suitable if heavy math operations are involved.
  • There are Problems with cross-platform portability.
  • We cannot use Shell scripts in the following situations when:
    • Extensive file operations are required
    • We need data structures, such as linked lists or trees
    • We need to generate or manipulate graphics or GUIs
    • We need direct access to system hardware
    • We need a port or socket I/O
    • We need to use libraries or interface with legacy code
    • Proprietary, closed source applications are used (Shell scripts put the source code right out in the open for the entire world to see)