lwc:programming:bash

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lwc:programming:bash [2021/09/22 15:23] – [Misc] John Harrisonlwc:programming:bash [2024/09/27 12:48] (current) – [Superuser] John Harrison
Line 1: Line 1:
-**Comments:**+==== Comments: ====
  
-Put: : <'COMMENTBLOCK_ORWHATEVERYOUWANTTOCALLME'+Put: : ''<'COMMENTBLOCK_ORWHATEVERYOUWANTTOCALLME'''
  
 before the block and put: before the block and put:
  
-COMMENTBLOCK_ORWHATEVERYOUWANTTOCALLME+''COMMENTBLOCK_ORWHATEVERYOUWANTTOCALLME''
  
  
 after the block after the block
  
-**DISPLAY SETTINGS:** +==== DISPLAY SETTINGS: ====
   * xrandr example: xrandr --output HDMI1 --mode 1280x1024 --right-of eDP1   * xrandr example: xrandr --output HDMI1 --mode 1280x1024 --right-of eDP1
   * change 1280x1024 display to 1600x1280:xrandr --output DP-1 --scale 1.25x1.25 --panning 1600x1280   * change 1280x1024 display to 1600x1280:xrandr --output DP-1 --scale 1.25x1.25 --panning 1600x1280
   * shift display down 1280 pixels: xrandr --output eDP-1 --mode 1920x1080 --pos 0x1280   * shift display down 1280 pixels: xrandr --output eDP-1 --mode 1920x1080 --pos 0x1280
  
-**FILE MANAGEMENT**+==== FILE MANAGEMENT ====
  
 Count # of files in a directory (recursively): Count # of files in a directory (recursively):
Line 62: Line 61:
 </code> </code>
  
-**Rip Audio from application using Pulseaudio (no Jack):** +==== Rip Audio from application using Pulseaudio (no Jack): ====
 get index number of application audio: get index number of application audio:
- 
   * pacmd   * pacmd
   * list-sink-inputs   * list-sink-inputs
Line 71: Line 68:
 assuming index is $INDEX: assuming index is $INDEX:
  
-  * pactl load-module module-null-sink sink_name=steam +  * ''pactl load-module module-null-sink sink_name=steam'' 
-  * pactl move-sink-input $INDEX steam +  * ''pactl move-sink-input $INDEX steam'' 
-  * parec -d steam.monitor | sox -t raw -r 44k -sLb 16 -c 2 - /tmp/testme.wav  +  * ''parec -d steam.monitor | sox -t raw -r 44k -sLb 16 -c 2 - /tmp/testme.wav'' 
- +=== Alternative: With ffmpeg === 
-**VIDEO**+  ''pactl list short sources'' and copy the one that has the word ''monitor'' in it 
 +    example: ''alsa_output.pci-0000_00_1f.3.analog-stereo.monitor'' 
 +  example cmd: ''ffmpeg -f pulse -i alsa_output.pci-0000_00_1f.3.analog-stereo.monitor -ac 2 recording.m4a'' 
 +==== VIDEO ====
  
 **transcode a video file so it is playable through Windows Media Player (Windows) and Quicktime (MacOS):** **transcode a video file so it is playable through Windows Media Player (Windows) and Quicktime (MacOS):**
Line 83: Line 83:
 </code> </code>
  
-**Record Desktop as Video:**+==== Record Desktop as Video: ====
  
 The easy way is to use gtk-RecordMyDesktop,but functionality with gtk-RecordMyDesktopusing jackappears to be broken. So another way if you need jackis ffmpegwith x11grab: The easy way is to use gtk-RecordMyDesktop,but functionality with gtk-RecordMyDesktopusing jackappears to be broken. So another way if you need jackis ffmpegwith x11grab:
Line 98: Line 98:
   * if the output file exists, ffmpeg will ask you if you want to overwrite the old file. That's nice, but somehow this throws off the synchronization between the audio and the video. So if you want to overwrite an existing file, delete it first.   * if the output file exists, ffmpeg will ask you if you want to overwrite the old file. That's nice, but somehow this throws off the synchronization between the audio and the video. So if you want to overwrite an existing file, delete it first.
  
-**Position of Mouse Cursor:**+==== Position of Mouse Cursor: ====
  
 <code> <code>
Line 104: Line 104:
 </code> </code>
  
-**PRINTING**+==== PRINTING ====
  
 add PDF printer to ubuntu intrepid or jaunty (source): add PDF printer to ubuntu intrepid or jaunty (source):
Line 114: Line 114:
 bmeps seems to be the only way to make a transparent PDF from a PNG file. Directions for building here. bmeps seems to be the only way to make a transparent PDF from a PNG file. Directions for building here.
  
-**PDF**+==== PDF ====
  
 convert a grayscale PDF to B&W with Imagemagick: convert a grayscale PDF to B&W with Imagemagick:
Line 121: Line 121:
 convert -threshold 75% input.pdf output.pdf convert -threshold 75% input.pdf output.pdf
 </code> </code>
-**INTERNET** 
  
-**ssh no password:** follow [[http://www.thegeekstuff.com/2008/11/3-steps-to-perform-ssh-login-without-password-using-ssh-keygen-ssh-copy-id/|these]] instructions +determine resolution of images inside a pdf''pdfimages -list EXAMPLE.pdf'' 
- +==== INTERNET ====
-**vpn on Linux 64 bit**: follow [[http://kb.mit.edu/confluence/display/istcontrib/Cisco+AnyConnect+Certificate+Error+on+Linux|these]] instructions +
- +
-**Remote Desktop (VNC through SSH tunnel)** +
- +
-  * ssh -L 5901:localhost:5900 UserName@host.com +
-  * (in a separate terminal): xtightvncviewer -encodings tight localhost:1+
  
 +  * **ssh no password:** follow [[http://www.thegeekstuff.com/2008/11/3-steps-to-perform-ssh-login-without-password-using-ssh-keygen-ssh-copy-id/|these]] instructions
 +  * **vpn on Linux 64 bit**: follow [[http://kb.mit.edu/confluence/display/istcontrib/Cisco+AnyConnect+Certificate+Error+on+Linux|these]] instructions
 +  * **Remote Desktop (VNC through SSH tunnel)**
 +    * ssh -L 5901:localhost:5900 UserName@host.com
 +    * (in a separate terminal): xtightvncviewer -encodings tight localhost:1
 +  * ssh to a host through another (jump) host
 +    * use ''-J'' i.e. ''ssh -J user@jumphost user@host''
 +    * also works for scp i.e. ''scp -J user@jumphost file user@host'' 
  
 **DHCP Server and Firestarter (on 12.04)** **DHCP Server and Firestarter (on 12.04)**
- 
   * sudo apt-get install dhcp3-server   * sudo apt-get install dhcp3-server
   * sudo ln -s /etc/dhcp/dhcpd.conf /etc/dhcpd.conf   * sudo ln -s /etc/dhcp/dhcpd.conf /etc/dhcpd.conf
Line 181: Line 181:
  
 <code>sudo lsof -i:8078</code> <code>sudo lsof -i:8078</code>
 +==== Superuser ==== 
 +=== Execute sudo cmd without needing to type password === 
 +== Staying Safe == 
 +  - backup ''/etc/sudoers'' file i.e. copy to somewhere safe 
 +  - leave at least one terminal window open as root 
 +  - edit ''/etc/sudoers'' with ''visudo'' not ''sudo''. It's a wrapper for your already configured editor (not necessarily vi) 
 +== The Magic == 
 +  * create a wrapper script that does all your magic for you. Don't add sudo to the cmds in the wrapper script 
 +  * using ''visudo'' add to the end of your ''/etc/sudoers'' file ''USERNAME ALL=(ALL:ALL) NOPASSWD: FULL_PATH_TO_SCRIPT'' substituting in USERNAME and FULL_PATH_TO_SCRIPT as necessary 
 +  * to execute the cmd without password type ''sudo FULL_PATH_TO_THE_SCRIPT''
 ===== Misc ===== ===== Misc =====
    * write to dmesg: ''echo Some message > /dev/kmsg''    * write to dmesg: ''echo Some message > /dev/kmsg''
-   * add timestamp to log entries that are piped. Add to pipe: '' awk '{ print strftime(), $0; fflush() }' ''+   * add timestamp to log entries that are piped. Add to pipe: ''gawk '{ print strftime(), $0; fflush() }' '' 
 +     * ''awk'' is supposed to do this but at least when then piping to ''grep'' only ''gawk'' worked.
    * remove package with all its dependencies. As root: ''apt-get purge `apt-get -s purge <PKG> | grep '^ ' | tr -d '*'`''    * remove package with all its dependencies. As root: ''apt-get purge `apt-get -s purge <PKG> | grep '^ ' | tr -d '*'`''
 +   * [[https://tldp.org/LDP/abs/html/tabexpansion.html|autocomplete parameters in bash script]]
 +   * traverse through to see what is using disk space: ''du -cha --max-depth=1 /var | grep -E "M|G"''
 +   * find out what app is on a particular port: ''netstat -anpe | grep "1234" | grep "LISTEN"''
  
  • lwc/programming/bash.1632342227.txt.gz
  • Last modified: 2021/09/22 15:23
  • by John Harrison