Sponsored Content
Operating Systems Linux UNIX Utility Development Conventions? Post 303040862 by MonilGomes on Friday 8th of November 2019 02:11:58 AM
Old 11-08-2019
UNIX Utility Development Conventions?

I'm slowly hacking away at a zsh script that shows some promise as a command line tool. I want to learn more about the conventions regarding command line tool development in Unix (and/or macOS), but don't really know where to look for this information.

What is the correct way, or convention, to specify and parse command line arguments, for example? How should I package my tool? What is the best way to handle deployment of the various aspects of my tool, for example the man page, or configuration settings? How should I handle the upgrade process?

Smaller details, like should I store my source code in the repo with execute permissions turned on, or should I only turn on those permissions when the files are deployed on the user's machine? What group should I set as the default for my executable files?

Does anyone know any great resources out there that address these issues?
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Problem with tip utility in unix

Hi , I have wrote a telnet clinet application to interact with remote system . This program takes the screen shots for every interaction and send back to us. After connecting to remote machine , i want to call tip utility to interact with a device which is connected to one remote system. Now my... (0 Replies)
Discussion started by: prasadvsda
0 Replies

2. SCO

Zip utility in sco unix

how can zip a directory in sco unix and transfer it to any other system using ftp. and finally how can i unzip it regards, ajay (1 Reply)
Discussion started by: ajay234
1 Replies

3. Shell Programming and Scripting

VLOOKUP utility in UNIX

Kindly help me to build the script similar to VLOOKUP function of MS Excell. (5 Replies)
Discussion started by: hjoshi
5 Replies

4. UNIX for Dummies Questions & Answers

age utility in unix

Hi, Can anyone explain me the use of age utility and how it works? Looking forward reply... Thanks, Venkatesh. (1 Reply)
Discussion started by: venkatesht
1 Replies

5. UNIX for Dummies Questions & Answers

Best unix incremental backup utility?

Hello everyone. Could you please advise of what would be the best Unix (Debian 4) program for regular (daily or weekly) incremental backups? I'm not sure whether the backups will be stored on a "backup" drive on the same system or on an external "backup" system, but we would like to have a... (2 Replies)
Discussion started by: nottrobin
2 Replies

6. Programming

c calling conventions

C calling convention we all know defines a way how the parameters are pushed onto the stack. My question is when and how does this C calling conventions matters to a user? When the user will have to bother about the calling conventions in his project? (5 Replies)
Discussion started by: rupeshkp728
5 Replies

7. UNIX for Dummies Questions & Answers

file hashing utility in unix

I am looking for a utility that does file hashing in unix. ...Please let me know of any good easy to use utility (3 Replies)
Discussion started by: jbjoat
3 Replies

8. UNIX for Dummies Questions & Answers

Typographic conventions in bash 4.2

is there a typographic convention that is followed in the man pages. where could a description be found. at this time i am in man stty and the author uses upper case in some places. and my brain is just burning to a fizzle while studying a book on bash and trying to stay in scope of the... (1 Reply)
Discussion started by: cowLips
1 Replies

9. UNIX for Beginners Questions & Answers

UNIX mail utility

Hi, I work on a Middleware application which is installed on Windows, but its file System is on HP UNIX. I am supposed to change the SMTP host address for my application. But I am not able to find the file where the old SMTP host would have been configured/hardcoded. Can anyone assist me on this... (2 Replies)
Discussion started by: jhilmil
2 Replies

10. Cybersecurity

Proper naming conventions

Hey guys, not sure should I post it here or in 'What is on Your Mind?' I'm discussing usage of DSL (domain specific language) in security tools with my colleagues. We haven't been able to reach an agreement over naming conventions. There are many tools using DSL: splunk, sumologic,... (2 Replies)
Discussion started by: Tobby P
2 Replies
GIT-MERGETOOL(1)                                                    Git Manual                                                    GIT-MERGETOOL(1)

NAME
git-mergetool - Run merge conflict resolution tools to resolve merge conflicts SYNOPSIS
git mergetool [--tool=<tool>] [-y | --[no-]prompt] [<file>...] DESCRIPTION
Use git mergetool to run one of several merge utilities to resolve merge conflicts. It is typically run after git merge. If one or more <file> parameters are given, the merge tool program will be run to resolve differences on each file (skipping those without conflicts). Specifying a directory will include all unresolved files in that path. If no <file> names are specified, git mergetool will run the merge tool program on every file with merge conflicts. OPTIONS
-t <tool>, --tool=<tool> Use the merge resolution program specified by <tool>. Valid values include emerge, gvimdiff, kdiff3, meld, vimdiff, and tortoisemerge. Run git mergetool --tool-help for the list of valid <tool> settings. If a merge resolution program is not specified, git mergetool will use the configuration variable merge.tool. If the configuration variable merge.tool is not set, git mergetool will pick a suitable default. You can explicitly provide a full path to the tool by setting the configuration variable mergetool.<tool>.path. For example, you can configure the absolute path to kdiff3 by setting mergetool.kdiff3.path. Otherwise, git mergetool assumes the tool is available in PATH. Instead of running one of the known merge tool programs, git mergetool can be customized to run an alternative program by specifying the command line to invoke in a configuration variable mergetool.<tool>.cmd. When git mergetool is invoked with this tool (either through the -t or --tool option or the merge.tool configuration variable) the configured command line will be invoked with $BASE set to the name of a temporary file containing the common base for the merge, if available; $LOCAL set to the name of a temporary file containing the contents of the file on the current branch; $REMOTE set to the name of a temporary file containing the contents of the file to be merged, and $MERGED set to the name of the file to which the merge tool should write the result of the merge resolution. If the custom merge tool correctly indicates the success of a merge resolution with its exit code, then the configuration variable mergetool.<tool>.trustExitCode can be set to true. Otherwise, git mergetool will prompt the user to indicate the success of the resolution after the custom tool has exited. --tool-help Print a list of merge tools that may be used with --tool. -y, --no-prompt Don't prompt before each invocation of the merge resolution program. This is the default if the merge resolution program is explicitly specified with the --tool option or with the merge.tool configuration variable. --prompt Prompt before each invocation of the merge resolution program to give the user a chance to skip the path. -O<orderfile> Process files in the order specified in the <orderfile>, which has one shell glob pattern per line. This overrides the diff.orderFile configuration variable (see git-config(1)). To cancel diff.orderFile, use -O/dev/null. TEMPORARY FILES
git mergetool creates *.orig backup files while resolving merges. These are safe to remove once a file has been merged and its git mergetool session has completed. Setting the mergetool.keepBackup configuration variable to false causes git mergetool to automatically remove the backup as files are successfully merged. GIT
Part of the git(1) suite Git 2.17.1 10/05/2018 GIT-MERGETOOL(1)
All times are GMT -4. The time now is 08:27 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy