User Tools

Site Tools


unixscripts:0-intro

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
unixscripts [2019/01/03 17:52] – [libraries] adminunixscripts:0-intro [2020/10/17 03:06] (current) admin
Line 1: Line 1:
-===== Unix Scripts ===== +===== Unixscripts:intro ===== 
-I use these scripts every day, they might be useful to others. They might even be useful templates for how to write a [[DecentBash | decent bash script]]!! You can download them individually by clicking on the links or you can download this {{scripts.tgz | tarball}} to get them all. Install them somewhere on your path - I use ''~/bin''. All my scripts honour the //-h//, //--help// options.+I use these scripts every day, they might be useful to others. They might even be useful templates for how to write a [[unixscripts:3-decentbash| decent bash script]]!! You can download them individually by clicking on the links or you can download this {{:scripts.tgz | tarball}} to get them all. Install them somewhere on your path - I use ''~/bin''. All my scripts honour the //-h//, //--help// options.
 ==== libraries ==== ==== libraries ====
 These are used in my other scripts These are used in my other scripts
 ===argp.sh=== ===argp.sh===
-{{scripts:argp.sh|argp.sh}} - a wrapper around **getopt**(1) to make life much easier for script developers and more predictable for script users. See also [[argp.sh]]+{{scripts:argp.sh|argp.sh}} - a wrapper around **getopt**(1) to make life much easier for script developers and more predictable for script users. See also [[unixscripts:2-argp.sh]]
 ++++ usage for argp.sh | ++++ usage for argp.sh |
 {{page>usages:argp.sh&inline}} {{page>usages:argp.sh&inline}}
Line 10: Line 10:
 ===bh-stdlib=== ===bh-stdlib===
 {{scripts:bh-stdlib|bh-stdlib}} - generic functions {{scripts:bh-stdlib|bh-stdlib}} - generic functions
------ 
-[[unixscripts-fluxbox|unixscripts-fluxbox]] 
-====Photo scripts==== 
-Generally, these are required **jhead**(1), **jpgtrans**(1), netpbm-progs (**pnmscale**(1)), libjpeg (**djpeg**(1), **cjpeg**(1)) 
-===erect-jpeg=== 
-{{scripts:erect-jpeg | erect-jpeg }} - rotate a photo so that it displays correctly by examining the Orientation Exim information in the file. Uses **xargs**(1) to parallelise operations to as many CPUs as it can find. 
-++++ usage for label-photos | 
-{{page>usages:erect-jpeg&inline}} 
-++++ 
-===label-photos=== 
-{{scripts:label-photos | label-photos }} - view *.jpg files and prompts for a label for each, putting the label into the Exif comment field. It also recurses through any directories called ''zoom'', applying the same label to photos of the same name. 
-++++ usage for label-photos | 
-{{page>usages:label-photos&inline}} 
-++++ 
-===rename-jpeg-by-date=== 
-{{scripts:rename-jpeg-by-date | rename-jpeg-by-date }} - renames jpg files according to the date reported by jhead 
-++++ usage for rename-jpeg-by-date | 
-{{page>usages:rename-jpeg-by-date&inline}} 
-++++ 
-=== resize-jpeg === 
-{{scripts: resize-jpeg| resize-jpeg }} - size a jpeg so that the longest side is the required number of pixels and the other side is scaled. 
-++++ usage for resize-jpeg | 
-{{page>usages:resize-jpeg&inline}} 
-++++ 
-=== shrink-jpeg === 
-{{scripts:shrink-jpeg| shrink-jpeg }} - passes photos through **djpeg**(1) and **cjpeg**(1) which can result in a size reduction of about 50% without compromising much on quality. The amount of shrinkage depends on the camera, of course. 
-++++ usage for shrink-jpeg | 
-{{page>usages:shrink-jpeg&inline}} 
-++++ 
------ 
-====X scripts==== 
-Generally, these require **wmctrl**(1) 
-===binpack=== 
-{{scripts:binpack | binpack }} - a python script that optimally packs windows onto the screen - used by the **tile** script; useful in most non-tiling WMs eg Fluxbox 
-++++ usage for binpack | 
-{{page>usages:binpack&inline}} 
-++++ 
-===fetch-app=== 
-{{scripts:fetch-app | fetch-app }} - bring an application to the front of current monitor no matter which workspace it is on; or starts it up, if necessary 
-++++ usage for fetch-app | 
-{{page>usages:fetch-app&inline}} 
-++++ 
-===half-screen=== 
-{{scripts:half-screen | half-screen }} - changes the window size to a proportion of the monitor size eg a half, a third, a quarter, a sixth, a ninth of the screen; useful in most non-tiling WMs eg Fluxbox 
-++++ usage for half-screen | 
-{{page>usages:half-screen&inline}} 
-++++ 
-===move-window=== 
-{{scripts:move-window | move-window }} - move windows. (requires [[http://tripie.sweb.cz/utils/wmctrl/ | wmctrl(1)]]); useful in most non-tiling WMs eg Fluxbox 
-++++ usage for move-window | 
-{{page>usages:move-window&inline}} 
-++++ 
-=== next-desktop.pl === 
-{{scripts: next-desktop.pl| next-desktop.pl }} - jump to the next desktop 
-++++ usage for next-desktop.pl | 
-next-desktop.pl takes up to 5 arguments: 
-direction - up, down, left right 
-number - default 1 desktop 
-wrap - whether to wrap around desktops 
-take - 1 = take the focus window with you, default 0 
-debug - 1 or 0 
- 
-; useful in most non-tiling WMs eg Fluxbox 
- 
-++++ 
-===tile=== 
-{{scripts:tile | tile }} - tile all the windows on the desktop (requires [[http://tripie.sweb.cz/utils/wmctrl/ | wmctrl(1)]]); useful in most non-tiling WMs eg Fluxbox 
-++++ usage for tile | 
-{{page>usages:tile&inline}} 
-++++ 
-===xcheck=== 
-{{scripts:xcheck | xcheck }} - runs a command (usually X) and shows stdout and stderr in a popup window if there's an error eg xcheck -- remote-x11vnc -x xdm 
-++++ usage for xcheck | 
-{{page>usages:xcheck&inline}} 
-++++ 
 ===i3-ws.py=== ===i3-ws.py===
 {{scripts:i3-ws.py | i3-ws.py }} - various i3wm workspace manipulations {{scripts:i3-ws.py | i3-ws.py }} - various i3wm workspace manipulations
 ++++ usage for i3-ws.py | ++++ usage for i3-ws.py |
 {{page>usages:i3-ws.py&inline}} {{page>usages:i3-ws.py&inline}}
-++++ 
------ 
-==== general scripts ==== 
-===backup-copy=== 
-{{scripts:backup-copy | backup-copy }} - my backup script - using this, I can keep a backup at a cost of only about 2Mb/day. Uses the hard-linking power of **rsync**(1) 
-++++ usage for backup-copy | 
-{{page>usages:backup-copy&inline}} 
-++++ 
-===ff=== 
-{{scripts:ff | ff }} - recursively find files (wrapper for **find**(1)) 
-++++ usage for ff | 
-{{page>usages:ff&inline}} 
-++++ 
-===fs=== 
-{{scripts:fs | fs }} - recursively search for patterns in files (wrapper for **find**(1) and **grep**(1)) 
-++++ usage for fs | 
-{{page>usages:fs&inline}} 
-++++ 
-===fit=== 
-{{scripts:fit | fit }} - fits a bunch of files/directories into CD or DVD sized subdirectories ready for burning  
-++++ usage for fit | 
-{{page>usages:fit&inline}} 
-++++ 
-===m=== 
-{{scripts:m | m }} - pretty display of man pages (needs '**v**' and a postscript or pdf viewer) eg ''m less'' to get a pretty man page for **less**(1) 
-++++ usage for m | 
-{{page>usages:m&inline}} 
-++++ 
-===mass-mv=== 
-{{scripts:mass-mv | mass-mv }} - renames and or moves files according to a regex; can also clean up filenames removing whitespace and/or weird characters 
-++++ usage for mass-mv | 
-{{page>usages:mass-mv&inline}} 
-++++ 
-===newest=== 
-{{scripts:newest | newest }} - recursively list files in directories in date order. If called as **oldest**, reverse the sort direction. If called as **biggest** or **smallest** list by file size. 
-++++ usage for newest | 
-{{page>usages:newest&inline}} 
-++++ 
-===r=== 
-{{scripts:r | r }} - run a command with sudo or popup a root xterm 
-++++ usage for r | 
-{{page>usages:r&inline}} 
-++++ 
-=== refactor === 
-{{scripts: refactor| refactor }} - uses **find**(1) and **sed**(1) to search and replace 
-++++ usage for refactor | 
-{{page>usages:refactor&inline}} 
-++++ 
-===v=== 
-{{scripts:v | v }} - view or execute any type of file going rather beyond the scope of **lessopen** - in the simple case of a text file this is just shorthand for **less**(1) 
-++++ usage for v | 
-{{page>usages:v&inline}} 
 ++++ ++++
  
-/* +
-=== === +
-{{scripts: |  }} -  +
-++++ usage for  | +
-{{page>usages:&inline}} +
-++++ +
-*/+
unixscripts/0-intro.1546563156.txt.gz · Last modified: 2019/01/03 17:52 by admin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki