|
Home | Switchboard | Unix Administration | Red Hat | TCP/IP Networks | Neoliberalism | Toxic Managers |
(slightly skeptical) Educational society promoting "Back to basics" movement against IT overcomplexity and bastardization of classic Unix |
I had some trouble with ddclient as well. So I developed a short bash-script that updates the hosts ip-address on dyndns.org when changed:
#!/bin/bash
export LANG="default"
ipneu=`/sbin/ifconfig *interface* | grep inet | awk '{print $2}' | sed 's#addr:##g'`
set `cat /var/spool/ipalt`
ipalt=$1
if [ "$ipalt" == "$ipneu" ]
then
echo "nochg">>/var/log/dyndnslog
else
echo "updating">>/var/log/dyndnslog
echo $ipneu>/var/spool/ipalt
wget -a /var/log/dyndnslog "http://*username*:*passwd*@members.dyndns.org/nic/update?system=dyndns&hostname=*mydomain*" -O /var/log/dyndnsres
cat /var/log/dyndnsres>>/var/log/dyndnslog
fi
To configure this script replace the following words:
*interface* name of the interface to fetch the IP from i.e. ppp0
*username* username of dyndns.org-account
*passwd* password to this account
*mydomain* hostname of the accounts domain to be updated ie. mydomain.dyndns.org
now save it to a directory that's in the search path ie.: /usr/sbin/updatedyndns
set the apropiate rights to this file to make it executable. ie.: chmod 4755 /usr/sbin/updatedyndns
add a script to the ppp/ip-up.d directory to make the machine execute the script everytime a new ppp-connection is made.
This script has no error-handling but it worked best for me so far. U might have noticed that this needs wget to be installed.--
- Just because you're paranoid, it don't mean they're not after you.
Re:My personal favorite; (Score:2) by 26199 (577806) * on Wednesday March 10, @08:54PM (#8527893) (http://www.davidmorgan.org/) |
:(){ It reads... define function ':' as follows: pipe the output from function ':' into function ':' -- do that in the background (ie fork). Call the function ':'. I had no idea how it worked, either, but I looked it up |
My favourite shell script... (Score:2) by cperciva (102828) on Wednesday March 10, @03:09PM (#8524266) (http://www.daemonology.net/) |
... is FreeBSD Update [daemonology.net]. 700 lines of shell code to fetch, install, and rollback security updates to an entire operating system. |
Tab completion (Score:3, Informative) by Spy Hunter (317220) on Wednesday March 10, @03:03PM (#8524210) (http://www.xwt.org/ | Last Journal: Saturday February 23, @04:33AM) |
In Debian, the Bash package comes with a totally awesome collection of
customized tab completions. For some reason, they are not turned on by
default.
To turn them on in a single account, you can put the line "source
|
pushd and popd (and other tricks) (Score:5, Informative)
by Komi (89040) <[email protected]> on Wednesday March 10, @02:41PM (#8524004) (http://slashdot.org/) |
I've read throught the tcsh man pages and stole from other people and
probably the least-known most useful trick I've found is pushd and popd
(which I realias to pd and po), and of course directory stack
substitution. Here's a snippet of code that's really useful:
The other major time saver I use are sed and awk. I used each for a specific purpose. Sed works great for substitution, and awk I use to grab columns of data. Here's a sample of how I'd use both together. This will list the home directories of the users on a machine. It's simple, but there's a ton you can do with this technique.
Here's other stuff I have grouped by sections in my First, I have my shell variables. The comments say what they do. The most important one is autolist.
Second, bindkeys are pretty neat. I rebind the up and down arrow keys. By default they scroll up and down one at a time through the history. You can bind them to search the history based on what you've typed so far.
Third, completes allow for customizing tab completion. When I change directories, tab only completes directory names. This also works for aliases, sets, setenvs, etc.
Fourth, I have all my aliases. I had to cut a bunch because of the lameness filter.
|
Re:pushd and popd (and other tricks) (Score:1) by MasterLock (581630) on Wednesday March 10, @03:23PM (#8524465) |
Two of my most handy aliases (tcsh and 4DOS/4NT) are:
alias mcd 'md \!*; cd \!*' alias rcd 'setenv OLD_DIR `pwd`;cd |
Re:pushd and popd (and other tricks) (Score:1, Informative)
by Anonymous Coward on Wednesday March 10, @03:25PM (#8524497) |
alias pd pushd alias po popd cd pd cp *.mp3 =1 # =1 is the first entry on the dirstack po # returns you back to first place cd cd cp *.mp3 ~- cd ~- |
Re:pushd and popd (and other tricks) (Score:2, Informative)
by MasterLock (581630) on Wednesday March 10, @03:33PM (#8524577) |
Two of my most handy aliases (tcsh and 4DOS/4NT) are: alias mcd 'md \!*; cd \!*' alias rcd 'setenv OLD_DIR `pwd`;cd Usage: ~/> mcd junkDir ~/junk> -- do commands, unzip files, et cetera -- ~/junk> rcd ~/> -- back where you were and the dir is gone -- |
Quick Hacks (Score:5, Informative) by frodo from middle ea (602941) on Wednesday March 10, @02:06PM (#8523604) (http://aol.com/) |
My 2 cent tips on budding shell script authors.
If the script is not working as you want, put a
on the fist line and
on the last line. You will see the exact execution path and variable expansion, very neat for debugging |
Re:Quick Hacks (Score:5, Informative) by Stinky Cheese Man (548499) on Wednesday March 10, @02:15PM (#8523713) |
In bash, at least, you can do this even more simply with...
sh -x scriptname |
Re:Quick Hacks (Score:1) by Tore S B (711705) on Wednesday March 10, @03:46PM (#8524725) (http://tore.nortia.no/) |
Actually, that's bash -x scriptname Just because sh is symlinked to bash with Linux, doesn't mean that standard |
Re:killing processes by name... (Score:1) by Durin_Deathless (668544) on Wednesday March 10, @03:16PM (#8524350) (http://tuxserver.ath.cx/~durin/) |
I prefer
but that's just me. |
Re:killing processes by name... - (Score:1) by timbrown (578202) <[email protected]> on Wednesday March 10, @05:36PM (#8526039) (http://www.machine.org.uk/) |
Erm, Solaris has pkill and pgrep for killing and locating process by name and other process attributes. |
Now run it. (Score:2, Informative) by Chris Burke (6130) on Wednesday March 10, @04:01PM (#8524910) (http://slashdot.org/) |
$ uname -a SunOS 5.8 Generic_108528-27 sun4m sparc SUNW,SPARCstation-20 $ which killall |
Re:pushd and popd (and other tricks) (Score:2) by cballowe (318307) on Wednesday March 10, @04:42PM (#8525394) (http://www.steelballs.org/) |
What you really mean is
Which does make the assumption that user home dirs are
Remember, there's a limited number of keystrokes in a lifetime - use
them wisely. |
Re:pushd and popd (and other tricks) (Score:1) by camh (32881) on Wednesday March 10, @06:25PM (#8526528) |
Similar to what I have, except I use pp instead of pd (because its faster to type) and pp without args takes you to your home directory (like cd without args). To go along with it, I use
If you're working within a number of directories, use pp to get to them and then use r to rotate between the directories. rr is convenient to quickly cd somewhere else to do something and then get back again. |
Re:pushd and popd (and other tricks) (Score:2) by Ramses0 (63476) on Wednesday March 10, @07:39PM (#8527252) |
My favorite "Nifty" was when I spent the time to learn about "xargs"
(I pronounce it zargs), and brush up on "for" syntax. ls | xargs -n 1 echo "ZZZ> " Basically indents (prefixes) everything with a "ZZZ" string. Not really useful, right? But since it invokes the echo command (or whatever command you specify) $n times (where $n is the number of lines passed to it) this saves me from having to write a lot of crappy little shell scripts sometimes. A more serious example is: find -name \*.jsp | sed 's/^/http:\/\/127.0.0.1/server/g' | xargs -n 1 wget
|
Re:pushd and popd (and other tricks) (Score:2) by reidbold (55120) <rmiller@uoguelp h . ca> on Wednesday March 10, @03:22PM (#8524442) (http://beadgame.org/) |
I don't think anything could be more clear. |
The Bash Debugger Project contains patched sources to BASH that enable better debugging support as well as improved error reporting. In addition, this project contains the most comprehensive source-code debugger for bash that has been written.
Since this project maintains as an open CVS development and encourages developers and ideas, the space could be also be used springboard for other experiments and additions to BASH. If you are interesting in contributing to this project, please contact [email protected].
However, if you are looking for the plain vanilla BASH, try here.
BASHDB Documentation | Debugger documentation online. | BASH Documentation | Documentation including changes to support debugging |
---|---|---|---|
Screenshot 1 [breakpoint] | A screenshot of bashdb in Emacs | Screenshot 2 [backtrace] | Another screenshot of bashdb in Emacs |
Download | Get the latest version here. | Screenshot 3 [ddd] | A screenshot of bashdb under DDD |
CVS | Browse the CVS Tree | ||
Sourceforge | The
sourceforge.net
project page. |
|
Switchboard | ||||
Latest | |||||
Past week | |||||
Past month |
2003-04-22 BASE * | sol8.sun4 | 722124 |
I can't tell whether this bug (tab-completion adding a space when it is used for the first word after the prompt) is Cygwin-specific, or if it was added with bash 2.05. My two versions of bash running on Linux are 2.04. Neither of them have this bug. Does someone have another (non-Cygwin) bash 2.05 that can test this behavior?
> -----Original Message----- > From: Eric Blake [mailto:[email protected]] > Sent: Thursday, November 07, 2002 10:25 AM > To: [email protected] > Subject: bash 2.05b-7 and command line tab completion > > > I'm still having problems with tab completion in the latest bash: > > $ bash --version > GNU bash, version 2.05b.0(7)-release (i686-pc-cygwin) > Copyright (C) 2002 Free Software Foundation, Inc. > $ ll ~/jacks/jacks # I typed ll ~/ja[TAB]jacks > -rwxr-xr-x 1 eblake unknown 558 Jul 24 18:33 jacks* > $ ~/jacks jacks # I typed ~/ja[TAB]jacks > > I expected to get ~/jacks/jacks both times, but the bash is > inserting a space after ~/directory when it is the first (but not subsequent) > command line word. However, /h[TAB]e[TAB]ja[TAB]jacks now > works, giving /home/eblake/jacks/jacks (and it hasn't always done so in > prior versions of bash). So whatever was fixed to make /-based tab completion work > needs to also apply to ~-based tab completion. > > -- > This signature intentionally left boring. > > Eric Blake [email protected] > BYU student, free software programmer
This version uses Cygwin's access() function now for figuring out if a user may access a file instead of it's own function to do this. This should result in more reliable results of access tests in shell scripts when running under Cygwin 1.3.21 and later. To update your installation, click on the "Install Cygwin now" link on the http://sources.redhat.com/cygwin web page. This downloads setup.exe to your system. The, run setup and answer all of the questions.
Society
Groupthink : Two Party System as Polyarchy : Corruption of Regulators : Bureaucracies : Understanding Micromanagers and Control Freaks : Toxic Managers : Harvard Mafia : Diplomatic Communication : Surviving a Bad Performance Review : Insufficient Retirement Funds as Immanent Problem of Neoliberal Regime : PseudoScience : Who Rules America : Neoliberalism : The Iron Law of Oligarchy : Libertarian Philosophy
Quotes
War and Peace : Skeptical Finance : John Kenneth Galbraith :Talleyrand : Oscar Wilde : Otto Von Bismarck : Keynes : George Carlin : Skeptics : Propaganda : SE quotes : Language Design and Programming Quotes : Random IT-related quotes : Somerset Maugham : Marcus Aurelius : Kurt Vonnegut : Eric Hoffer : Winston Churchill : Napoleon Bonaparte : Ambrose Bierce : Bernard Shaw : Mark Twain Quotes
Bulletin:
Vol 25, No.12 (December, 2013) Rational Fools vs. Efficient Crooks The efficient markets hypothesis : Political Skeptic Bulletin, 2013 : Unemployment Bulletin, 2010 : Vol 23, No.10 (October, 2011) An observation about corporate security departments : Slightly Skeptical Euromaydan Chronicles, June 2014 : Greenspan legacy bulletin, 2008 : Vol 25, No.10 (October, 2013) Cryptolocker Trojan (Win32/Crilock.A) : Vol 25, No.08 (August, 2013) Cloud providers as intelligence collection hubs : Financial Humor Bulletin, 2010 : Inequality Bulletin, 2009 : Financial Humor Bulletin, 2008 : Copyleft Problems Bulletin, 2004 : Financial Humor Bulletin, 2011 : Energy Bulletin, 2010 : Malware Protection Bulletin, 2010 : Vol 26, No.1 (January, 2013) Object-Oriented Cult : Political Skeptic Bulletin, 2011 : Vol 23, No.11 (November, 2011) Softpanorama classification of sysadmin horror stories : Vol 25, No.05 (May, 2013) Corporate bullshit as a communication method : Vol 25, No.06 (June, 2013) A Note on the Relationship of Brooks Law and Conway Law
History:
Fifty glorious years (1950-2000): the triumph of the US computer engineering : Donald Knuth : TAoCP and its Influence of Computer Science : Richard Stallman : Linus Torvalds : Larry Wall : John K. Ousterhout : CTSS : Multix OS Unix History : Unix shell history : VI editor : History of pipes concept : Solaris : MS DOS : Programming Languages History : PL/1 : Simula 67 : C : History of GCC development : Scripting Languages : Perl history : OS History : Mail : DNS : SSH : CPU Instruction Sets : SPARC systems 1987-2006 : Norton Commander : Norton Utilities : Norton Ghost : Frontpage history : Malware Defense History : GNU Screen : OSS early history
Classic books:
The Peter Principle : Parkinson Law : 1984 : The Mythical Man-Month : How to Solve It by George Polya : The Art of Computer Programming : The Elements of Programming Style : The Unix Hater’s Handbook : The Jargon file : The True Believer : Programming Pearls : The Good Soldier Svejk : The Power Elite
Most popular humor pages:
Manifest of the Softpanorama IT Slacker Society : Ten Commandments of the IT Slackers Society : Computer Humor Collection : BSD Logo Story : The Cuckoo's Egg : IT Slang : C++ Humor : ARE YOU A BBS ADDICT? : The Perl Purity Test : Object oriented programmers of all nations : Financial Humor : Financial Humor Bulletin, 2008 : Financial Humor Bulletin, 2010 : The Most Comprehensive Collection of Editor-related Humor : Programming Language Humor : Goldman Sachs related humor : Greenspan humor : C Humor : Scripting Humor : Real Programmers Humor : Web Humor : GPL-related Humor : OFM Humor : Politically Incorrect Humor : IDS Humor : "Linux Sucks" Humor : Russian Musical Humor : Best Russian Programmer Humor : Microsoft plans to buy Catholic Church : Richard Stallman Related Humor : Admin Humor : Perl-related Humor : Linus Torvalds Related humor : PseudoScience Related Humor : Networking Humor : Shell Humor : Financial Humor Bulletin, 2011 : Financial Humor Bulletin, 2012 : Financial Humor Bulletin, 2013 : Java Humor : Software Engineering Humor : Sun Solaris Related Humor : Education Humor : IBM Humor : Assembler-related Humor : VIM Humor : Computer Viruses Humor : Bright tomorrow is rescheduled to a day after tomorrow : Classic Computer Humor
The Last but not Least Technology is dominated by two types of people: those who understand what they do not manage and those who manage what they do not understand ~Archibald Putt. Ph.D
Copyright © 1996-2021 by Softpanorama Society. www.softpanorama.org was initially created as a service to the (now defunct) UN Sustainable Development Networking Programme (SDNP) without any remuneration. This document is an industrial compilation designed and created exclusively for educational use and is distributed under the Softpanorama Content License. Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.
FAIR USE NOTICE This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available to advance understanding of computer science, IT technology, economic, scientific, and social issues. We believe this constitutes a 'fair use' of any such copyrighted material as provided by section 107 of the US Copyright Law according to which such material can be distributed without profit exclusively for research and educational purposes.
This is a Spartan WHYFF (We Help You For Free) site written by people for whom English is not a native language. Grammar and spelling errors should be expected. The site contain some broken links as it develops like a living tree...
|
You can use PayPal to to buy a cup of coffee for authors of this site |
Disclaimer:
The statements, views and opinions presented on this web page are those of the author (or referenced source) and are not endorsed by, nor do they necessarily reflect, the opinions of the Softpanorama society. We do not warrant the correctness of the information provided or its fitness for any purpose. The site uses AdSense so you need to be aware of Google privacy policy. You you do not want to be tracked by Google please disable Javascript for this site. This site is perfectly usable without Javascript.
Last modified: March 12, 2019