nails says, "extoteris is logging for us." Dansa enters from the Forum. Dansa has arrived. nails says, "Yay, our second heckler." [>>Public] Spider has connected. nails is hoping we get a couple more people. Spider has arrived. Announcement: nails shouts, "It's that time, people." nails says, "So much idling. Tsk." Nokomis says, "Well, you have three groupies anyway, nails." Spider must also idle on account of going to store. But has wonderful backscroll! Tyr enters from the Forum. Tyr has arrived. Tyr says, "Hah. Found it." nails says, "Why did I just get voicemail?" nails shakes fist at phone. nails says, "Okay. Stupid voicemail thing dealt with." nails says, "Show of hands. Who here isn't idle?" Nokomis isn't idle. Dansa isn't idle! nails says, "Woo, signs of life :)" Jennifer is idle! nails grins. nails says, "Next question: who has a unix shell account?" Tyr is not idle, and has several. Minion has arrived. nails patpats Minion. Nokomis has access to several as well. Dansa does, but also has a Nokomis. nails says, "And how many of you don't have your own server/unix system? :)" Nokomis says, "Probably only Spider and Dansa ;)" Minion is just here to be cute. Nokomis steals Minion's tiara. Dansa doesn't! nails grins. nails says, "Is anybody not exactly sure what a unix shell account is?" Minion grrs! "Get your own!" Dansa gives Minion a new tiara. Prettier. Minion beams and sets it around her fez. nails says, "Okay." nails says, "Questions?" nails says, "Where would people like to begin?" Tyr says, "The beginning is usually a good place." nails says, "Yes, but what's the beginning? :)" Geo says, "What is a shell?" Geo feeds nails says, "The shell is actually a program that allows the user to interact with the unix system. It provides the command line interface that allows you to login and issue commands to the system." cHia enters from the Forum. cHia has arrived. Geo says, "What is the difference between a 'shell' and 'shell programming'?" [>>Public] Malicia has connected. nails says, "The shell itself is just a program. When you login to a system, beit via telnet or ssh, or locally via the console, the shell program is run. When you type something at the prompt, the shell interprets the command and its arguments." nails says, "Shell scripting is very basically putting those commands into a text file." nails says, "There are different shells available, and each one has its own syntax when it comes to interpreting commands and arguments, and therefore a script written to be used with one shell won't necessarily work with another shell." nails says, "The original shell was simply called 'sh', and was known as the Bourne shell, named after the guy who primarly wrote it." nails says, "Later, another shell was written called 'csh' or The C Shell. It was geared towards C programmers." nails says, "Today, the most popular shells are bash, ksh and tcsh." nails says, "bash and ksh are more modern, more advanced versions of the original sh, and tcsh is a more advanced shell based on csh." Announcement: nails shouts, "For those who don't know, we're having a talk in the Museon Forums. From #0, MF then TL" nails says, "Any questions?" Nokomis says, "How do you tell what shell you've logged into and if you don't like that one, how do you change it?" Grey enters from the Forum. Grey has arrived. Bonn enters from the Forum. Bonn has arrived. Jennifer says, "How do you pronounce ksh and tcsh?" Bonn says, "Korn shell and tcl shell :)" nails says, "Hmm. how do you see what shell you're using?" Geo says, "set | grep SHELL" nails says, "I know what my default is by checking /etc/passwd." nails nods to Geo, "but that can sometimes lie." Geo says, "Hmm. true." nails says, "tcsh is not tcl shell, btw." nails says, "That's tclsh" nails says, "tcsh I pronounce 'Tee shell', and ksh I pronounce 'Kay shell"" Tyr says, "nails: Would 'echo $SHELL' give you accurate information?" nails says, "bash, btw, stands for the 'Bourne Again' shell." nails shakes his head a Tyr. Tyr says, "Why not?" nails says, "I logged in to this server, and my SHELL was tcsh. I then typed 'bash' and started a bash subshell." Bonn confuses 'em all, all the time. Tyr says, "Ah." nails says, "if I then check the SHELL variable, it is still /bin/tcsh" Tyr says, "'Swhat I thought." Bonn peeks around, wonders what the talk's about. Tyr says, "Unix shell accounts." nails says, "So the answer to the first part of your question, Nokomis: I don't know how to find the /current/ shell, but I know how to find my default." Nokomis says, "Okay, so how do you change it?" nails says, "The simplest way is to check /etc/passwd. One way to do that is: grep /etc/passwd" Geo says, "also, nails ... in general, right after login, its HIGHLY likely that another shell has not been started, and that 'set' and '$SHELL' will be accurae." Geo says, "accurate" nails says, "my account is jonjones, so 'grep jonjones /etc/passwd' returns something like this: jonjones:*:2112:2112:Jon Jones:/home/staff/jonjones:/bin/tcsh" nails says, "The last piece on that line is /bin/tcsh. That's my default shell." nails says, "most unix systems have a command like 'chsh', which is short for 'change shell'" Nokomis says, "And that changes your default shell as well as current? It doesn't just change it temporarily?" nails says, "I will explain. :)" nails says, "Sometimes instead of chsh, it's chfn, or otherwise. It varies from system to system, so check with your local admin if you can't find it." Brigid enters from the Forum. Brigid has arrived. nails says, "What this command does is throw you into a text editor (whatever is your default), and the text file that you are presented with has a number of fields, including your shell. You can then edit the file, and when you save it, the new information will be updated in your /etc/passwd entry. The next time you login, that new shell will be your default." nails says, "A word of caution: Do not mess this up." nails says, "If you enter in an invalid shell and do not fix it before logging out, you may not be able to login again until your system administrator fixes it." nails says, "People who are paging me with helpful advice? feel free to share with the room :)" cHia:P cHia says, "to find your current shell: echo $0" Geo says, "If you want to verify the full path of your desired shell, you can 'which ', eg 'which tcsh'" nails says, "If 'which' can't find the shell, the next thing to try is 'whereis'. ie: whereis tcsh" nails says, "The difference between which and whereis is that which searches the locations in your PATH variable, and whereis searches a 'standard' set of locations." Grey says, "How often do shell executables get stored in locations other than /bin?" cHia says, "often." nails says, "It varies from system to system, but fairly often." Brigid says, "If you find that he shell you want isn't in your PATH, must you cange that? Or am I smokin crack?" nails says, "Most unix-type OSes ship with a limited set of shells. Additional shells are often treated like any other add-on application, and can be stored in non-system locations." Geo says, "The 'standards' are /usr/bin, /usr/sbin, /bin, /sbin ... and for systems with lots of localized stuff: /usr/local/bin" nails says, "For example, I use FreeBSD. tcsh is included with it, but bash is not." nails says, "So on FreeBSD, tcsh is in /bin/tcsh. But after I install bash, it is in /usr/local/bin/bash" nails says, "To login with a particular shell, you do not need to be able to find it in your PATH." nails says, "The reason for this is that when you change the /etc/passwd setting, you specify the full path to the shell." nails says, "ie, in the example I gave above, my shell was listd as /bin/tcsh" nails says, "If I changed it to bash, my /etc/passwd entry would list /usr/local/bin/bash" nails says, "This is important because the system must find your shell before your PATH variable is set." nails says, "This all make sense so far?" Dansa says, "Yep." nails says, "I'm not sure I answered Brigid's question correctly." nails says, "You do need to find the shell, and it's location, before you can change your default to it." nails says, "ie, if you don't know where bash is, you actually can't specify /path/to/bash" nails says, "It's also possible that the shell you are looking for just isn't installed." [>>Public] Dark Queen has connected. Brigid says, "Yes, you answered wat I was asking :)" nails says, "Sun Solaris didn't come with tsch until version 8, I think, and didn't come with bash until 9." [>>Public] nails waves. [>>Public] Malicia suddenly gets The March of the Black Queen stuck in her head. nails says, "Any other questions about what a shell is?" Grey says, "Does it come in a pink version?" nails says, "If by Pink you mean the recording artist?" nails says, "Yes." nails lies. Grey says, "Boo." nails says, "On some systems, some shells support color." nails says, "I don't know much about it." Grey says, "I know. I use a green/blue prompt." nails says, "I like green/blue." nails says, "Okay. Pulse check: who is still alive?" Dark Queen enters from the Forum. Dark Queen has arrived. Geo is. cHia twiddles. nails wonders if Jennifer is *still* eating. nails waves to the Queen. Dark Queen says, "Hi nails." nails says, "So, everybody here uses MU*s in some capacity. Many of you run them or are otherwise responsible for them." Nokomis is here. Jennifer says, "Nah, I'm just RPing elseMU*" nails says, "How about you, Jennifer? Do you run a game?" nails says, "Or are you just here for the donuts?" Dansa says, "I'm still alive!" Dansa is just slow. cHia is going home now. cHia goes home. cHia has left. [>>Public] Right brainers rule! Faolin has connected. [>>Public] nails says, "Come on over, F :)" [>>Public] Right brainers rule! Faolin says, "Where?" Tyr is alive. barely. [>>Public] nails says, "#0, MF, TL" Jennifer says, "Not anymore, I don't. I'm just here to provide moral support. And to save you all from the donuts." nails grins. Faolin enters from the Forum. Faolin has arrived. Minion blinks. "There's donuts?! Dude. No one told me!" nails says, "Geo's hiding them from you." Minion whines. nails waves to Miss F. Jennifer tosses Minion a Boston Creme. Minion <3s Jennifer. Faolin waves. [>>Public] Ash has connected. [>>Public] nails waves to Ash, too. [>>Public] Ash swaps to his char after remembering the password. Hiya. Ash enters from the Forum. Ash has arrived. nails says, "Welcome, welcome. :)" Dark Queen waves to Ash. Ash heyyas. Just sittin' in to see if there's anything I can pick up. Dark Queen likewise sits in because she's a total idiot. nails says, "So." nails says, "We've talked about what a shell is. How about what we do with them?" nails says, "The shell itself is just a means to an end. In general, you don't log into a system just to play with the shell. You have some task you're trying to accomplish." Jennifer nods sagely. "Like fortune." nails says, "Exactly." nails says, "Except we have +fortune here." nails says, "No questions?" Geo says, "How about starting up the mush?" Dark Queen says, "Real quick, what is fortune?" Geo says, "or shutting it down." nails says, "fortune is a program that spits out random phrases." nails says, "Usually its quotes or proverbs or little jokes, but there are different sets of random stuff." Dark Queen says, "Ahhhh." nails says, "Often you'll see it at startup. On the MUSHpark servers, which run FreeBSD, fortune is triggered when you login, but it spits out some little bit of unix advice." Dark Queen says, "That would be why I have never seen it then. =)" nails grins. nails says, "Do you know how many MU* commands are actually copies of unix commands?" nails says, "I don't either." nails says, "A whole lot, though." Brigid says, "lots" nails says, "@chown? unix command 'chown'." Dark Queen snerks. nails says, "@wall? unix command 'wall'." Tyr says, "+finger, +who" nails says, "wall has nothing to do with bricks or cement. It's an abbreviation of 'write all'." Tyr says, "@shutdown :)" Grey says, "@ps / ps" nails says, "Using a MU* is almost like a partial unix tutorial." nails addresses Geo's question. nails says, "Does everybody know how to start up their game if it's not running?" Tyr does. Faolin says, "Poke you into doing it?" Dansa nods. IM Nokomis. 'Hey. Game's down. Could you fix it?' Dansa ducks. Tyr grins. Dark Queen says, "I bug Ash. =)" Dansa vaguely knows how to do it herself. I have a how-to bunch of notes around here somewhere. Brigid says, "as someone who's had the person you get to do those things for you go rogue, learn how :P" nails says, "Does anybody who currently relies on me or Nokomis wish to know how to do it in case we're busy getting run over a bus or having crazy monkey sex, either with each other or with other people?" nails says, "err, want to know?" Dark Queen says, "Please tell us, I'm logging this for others anyways." Faolin would like to know :) Dansa would like to know, yes. It would refresh my memory. nails says, "For one thing, it's different between different codebases." nails says, "The first thing you need to know how to do is login to your shell account." nails says, "Knowing your username and your password is key. Having a proper telnet or ssh client is also key." [>>Public] Alternate Reality has connected. nails says, "For the MUSHpark servers, telnet is not an option, and this is increasingly true wherever you go. ssh is teh way to go." Reality enters from the Forum. Reality has arrived. nails says, "For Windows users, I recommend Putty (google 'download putty')." Faolin waves to Reality. nails says, "For Mac OSX users, you can ssh from the termina." Reality says, "hey" nails says, "terminal." nails says, "So." nails says, "know these things." nails says, "The next thing to know is: where is your game directory located?" Faolin says, "What about OS 9 users?" nails says, "You're screwed." nailserr. nails says, "I think NiftyTelnet has an SSH option, perhaps?" Faolin nods and will check it out later. Grey says, "There is also a MacSSH app out there." nails says, "So, it's good to know where your game is actually installed on the system. You'll need this for a number of things, so make sure you find out if you don't know." Faolin says, "Cool." nails says, "Many game hosts just install it in the user's home directory." nails says, "For MUSHpark, I install games on a separate /games/ partition." nails says, "Any questions about what a home directory is?" Dansa says, "What is a home directory?" nails grins. nails says, "Every user on the system has a home directory. This is specified in the /etc/passwd file (like where we found the default shell)" nails says, "When you login to your account, that directory will be set as your present working directory." Dansa nods. nails says, "grep /etc/passwd will show you. Again, my example:" nails >> jonjones:*:2112:2112:Jon Jones:/home/staff/jonjones:/bin/tcsh nails says, "my home directory is /home/staff/jonjones" Nokomis says, "It's kind of like your my documents folder. Only better." nails says, "You can always find out where you are on the system with 'pwd'" nails says, "This command tells you your present working directory." nails says, "In this example, my home directory is on the /home partition." Dansa nods. nails says, "partitions in unix are like 'drives' in windows. like, C: drive, D: drive." nails says, "They aren't necessarily separate physical drives; a single physical drive can be split into a number of partitions." nails says, "So, on the MUSHpark servers, there is a partition called /games" nails says, "under this, there is a directory for each game that runs on the system." nails says, "On the server dinah, this game (MPUG) is installed under /games/mpug" nails says, "By default, in this directory you'll find a subdirectory that is named after your codebase." nails says, "ie: /games/mpug/mux2.4/" nails says, "Other games will have /games//pennmush/" nails says, "Each of these has yet another subdirectory called 'game'. So you will find /games/mpug/mux2.4/game/" nails says, "Or /games/foo/pennmush/game/" nails says, "That there is ultimately your game directory." Dansa nods. nails says, "In there you will find your configuration files, a directory with your text files (news/help, connect screens, etc). a subdirectory with your data files, etc." nails says, "And in that directory will be a script that starts up your game." nails says, "For MUX, it is called Startmux." nails says, "For TinyMUSH and RhostMUSH, it's called Startmush." nails says, "For penn, it is called restart." Ash has disconnected. [>>Public] Ash has disconnected. nails says, "So, if your game is down, you 1. login to your accound. 2. cd to your game directory. 3. type ./" nails says, "ie ./Startmux" nails says, "In most cases, you won't get any 'okay' messages. It'll just exit silently and return your prompt." nails says, "Try logging into your game. If you can't get to it, check to make sure that the game process is actually running." nails says, "First, read the log file." [>>Public] Ash has connected. Ash has connected. nails says, "For PennMUSH, there is a separate 'log' directory, which contains multiple log files." nails says, "For TinyMUSH, there is a .log file." nails says, "For TinyMUX, it's a really long name, based off the mud_name variable in your conf file." Nokomis says, "It would be nice if MUX put logs into a directory and put backups into a directory." Nokomis says, "Put that is." nails says, "go to BrazilMUX and +request it :)" Grey says, "Nokomis, log into dinah.mushpark.com 6250 and +pitch that idea." Grey says, "Which is what nails said." nails says, "I believe the official address is: brazilmux.tinymux.org 2860" nails says, "But either will work." nails says, "Another thing to check is ps." Grey says, "Probably. My tiny.world file uses that one cause I'm too much of a slacker to go worry about the offical one." nails says, "ps lists processes running on the system. Which ones it lists depends on options (and ps varies from OS to OS, sometimes significantly)" nails says, "Usually I use: ps -aux | grep " nails says, "On some systems with a different style of ps, the options to use are ps -ef" Ash says, "Question - are there large variations between ps's used on Linux versions?" nails says, "In this day and age, I'm not really sure." nails hasn't used a lot of different linux dists recently. Tyr says, "MacSSH > NiftyTelnet SSH" nails says, "I mostly deal with Solaris and FreeBSD , but I'm starting to get back into using Linux for a customer at work, and they use SUSE." nails says, "On SUSE, I was noticing that the options it supports varies depending on whether or not you use a - first." nails says, "ie, ps ef, or ps -aux will work." nails says, "This might be more common these days." Nokomis pitched. nails :) Nokomis blamed nails. nails says, "Also, I'm not sure if this has changed with 1.8.0 and up, but previous versions of Penn are really dumb when it comes to logs." Ash says, "I've noticed at least one or two Linux versions that barf if you put the - in front of some options (but not others)." Ash says, "i.e. ps aux works, but ps -aux doesn't. Just FYI if anyone cares." nails says, "It doesn't rotate them, it doesn't keep old versions of logs." nails says, "If the game goes down, and you run the ./restart script? It just deletes the existing logs before starting up." nails says, "So when I'm troubleshooting problems with a Penn game, I go and edit the restart script and tell it to move the log directory instead of rm'ing it." nails says, "oh, I should explain the ./ thing." Tyr says, "That behavior is still the default in 1.8.1." nails says, "Tsk." Dark Queen says, "Figures." nails says, "If you're running a Penn game, and you run into a problem that requires a restart from the shell, save your logs before starting the game up." nails says, "They might have valuable information about the problem." nails says, "TinyMUX rotates its log files. Every time the log file gets to be about a certain size, it creates a new file and starts writing to it." nails says, "Every time you @restart the game, it starts a new log file." nails says, "The downside of this is that your game directory can get very cluttered if you have a lot of log activity. MUX does nothing to remove log files after a certain age or amount, so you have to manually go in and clean them up." nails says, "Questions about any of this?" nails says, "oh yeah." nails says, "the ./ thing." nails says, "In unix (and in DOS), every directory has two 'special' files: . and .. (and I can't end this sentence with a period after that)." nails says, "the . refers to 'this directory' and the .. refers to 'one directory up' or 'the parent directory'." nails says, "so if you are in /games/foo/games/ . refers to /games/foo/games/ and .. refers to /games/foo/" nails says, "./ is a relative path, ie a path starting from your current directory." nails says, "If you were in /games/foo/ and typ 'ls', youll see 'game' listed. type ls ./ and you'll see the same thing." nails says, "./blah means 'blah, in my current location'." nails says, "By default, when trying to run a program, your shell searches your PATH for the program. If it isn't in your path, no go." nails says, "since your game directory isn't generally listed in your path, you have to specify a path for the shell to find the program." nails says, "./ tells the shell "ignore my PATH, look here, only here"" nails says, "Questions?" nails says, "And while we're at it, life signs?" Jennifer lives. Dark Queen does not. Faolin says, "How would a person with a game using Penn save logs before restarting?" Dansa checks. Yep. Still alive. nails says, "the logs are kept in a directory called 'log'." Minion belches. Nokomis is dead. Ash reanimates DQ with pilfered animatronics from Disneyland. Dark Queen acks. nails says, "you can rename this by moving it. In unix, the mv command." nails says, "My advice would be: mv log log." Faolin says, "Okay" nails says, "ie: mv log log.20050720" nails says, "if you're doing it a lot on the same day, add more to it." nails says, "like log.20050720.3" Faolin nods. nails says, "or log.whydoesthisstupidthingnotwork" Brigid lives and listens Dansa laughs. nails says, "When you move that, 'log' will cease to exist, and the restart script won't even care. It'll create a new log and populate it with new files." nails notes that on several occasions when games have blown up, he's backed up entire data directories to data.BORKED Dansa laughs. nails says, "In the words of Mr. T: The important thing is... just have fun with it!" Nokomis says, "That way the Swedish Chef is sure to find them." nails says, "Okay, show of hands:" nails says, "Who needs a potty break?" nails raises his hand. nails brb Ian has arrived (and stuff). Reality has disconnected. [>>Public] Alternate Reality has disconnected. Dansa laughs. nails says, "More questions!" Dansa says, "What are some basic commands that everyone ought to know while trying to navigate a shell?" nails says, "well, cd is pretty important. It's 'change directory'." nails says, "At any given time when you are logged in, you have a current directory." [>>Public] Angie has connected. nails says, "This goes by many names. current working directory, present working directory." Dansa nods. nails says, "If you don't have one, things get unhappy." nails says, "Does everybody know the difference between an absolute path and a relative path?" Nokomis knows what an absolut path is! Dansa doesn't. :( Faolin says, "No" nails says, "Absolute paths have nothing to do with vodka." nails says, "Lets just get that straight." Nokomis grins. Dansa says, "Is it the one I stumble...oh, okay." nails says, "unix uses a hierarchal directory structure. You have directory/subdirectory/subdirectory" nails says, "The top of the hierarchy is the 'root' directory. it's better known as '/'" nails says, "If you are in /games/foo/game, and you type: cd /, you will be in /" nails says, "I mentioned earlier a command called 'pwd'. this will give you the full (absolute) path to your current directory." nails says, "In the contents of /, you will find 'games'." nails says, "if you are in /, you can type 'cd games'. Note that there is no / in front of games, there." nails says, "If you are in your home directory, ie /home/users/dansa, and type 'cd games', you'll get an error saying that games doesn't exist." nails says, "because there is no /home/users/dansa/games" [>>Public] Medusa has connected. nails says, "If you specify a path to a file that does not start with /, it is a relative path." nails says, "If it does start with a /, it is an absolute path." nails says, "So: you are in /home/users/dansa, and you want to get to your game directory. You type 'cd games/dansa/game'. You get an error." nails says, "Because that path would be 'relative' to where you are, and /home/users/dansa/games/dansa/game doesn't exist." nails says, "Alternately, you add a slash." Dansa says, "Ok." nails says, "You are in /home/users/dansa, and you type 'cd /games/dansa/game'" nails says, "It's like if you're asking directions. And someone says: take a left, then go two miles." nails says, "Uh. not helpfu" nails says, "l." Dansa nods. nails says, "if you say 'starting at the red barn, take a left then go two miles'." nails says, "so." nails says, "cd: very important." Dansa nods. nails says, "cd also has nifty tricks." Nokomis says, "Like?" nails says, "type 'cd' by itself? it sends you to your home directory." Tyr says, "'cd' alone will take you to your...beat me to it. :)" nails grins. Jennifer idles off for the night. nails says, "By, J :)" nails says, "err, Bye." Tyr waves. nails buys J. Ian waves at J. nails says, "Here's another trick:" Tyr says, "MJ?" Dansa waves to Jennifer. nails says, "Say you're in /games/dansa/game/. You type cd /foo/blah. You are no in /foo/blah." nails says, "type: cd -" nails says, "it takes you back to /games/dansa/game/" nails says, "It's like the 'recall' button on your tv remote." Dansa nods. Dansa laughs. Dansa says, "Neat." nails says, "Another trick in paths. ~ is a shortcut for your home directory." nails says, "cd ~ takes you home." nails says, "say that in your home directory, you have a subdirectory called 'junk'." Dansa says, "Ok." nails says, "That would be /home/users/dansa/junk" nails says, "no matter where you are currently, cd ~/junk will take you there." nails says, "~/ = from my home directory..." nails says, "Ian?" nails says, "why is ~ on a line by itself telling me 'MAIL: No message in progress.'?" Ian returns. Ian says, "Not sure. I take a look." nails didn't know ~ was an @mail command. :) nails anyways. nails says, "cd is very important." nails says, "Other commands: ls, cp, mv, rm." Nokomis says, "Teach us neat tricks for ls!" nails says, "ls is 'list files'. it's like the DIR command in DOS." nails says, "My favorite form of ls is: ls -alrt" nails says, "the options are as thus: -a, all files (some files are 'hidden'). -l, long format. shows size, date, etc instead of just the filename. -r for reverse order, and -t to sort by time." nails says, "The default sort order is alphabetical." nails says, "with -rt it shows files with the oldest first, newest last. Very handy for seeing what has been changed recently." nails says, "-d is also handy." nails says, "if you ls a directory, you'll see its contents." Dansa nods. nails says, "if you just want to see info about the directory itself, not what's in it, you can use -d." nails says, "hidden files, btw, are files whose names start with a ." nails says, "so .iamsecret will not show up in a regular ls." Dansa nods. nails says, "usually 'dot files' are config files for common programs." nails says, "shells have config files, although it's messy how they're interpreted." Ian points out, "Directories with names leading with . are also hidden." nails says, "for example, tcsh will read a file called .tcshrc or .cshrc when you login." nails nods. Nokomis says, "Like .tfrc is tiny fugue I do believe." nails nods. Bonn returns. nails says, "Much of what is said about files also applies to directories, as directories are really just a special type of file." nails says, "Much but not all. :)" Bonn offers... alias. nails says, "aliases are very handy. often tricky because they rely on shell syntax, and therefore they vary between shells." nails says, "very quickly, there are a couple of other handy commands that are good to know about." nails says, "head, tail, more and less." nails says, "head will show you the first 10 lines of the file." Bonn noddlies. True. Mmm, head, tail, more and less. Cool names for commands. nails says, "tail shows the last ten." nails says, "each of them takes an option: head -20 will show 20 lines. same goes for tail." nails says, "these are handy with piping. Say you want to see the 10 most recent files in a directory that has tooooo much stuff. instead of spamming yourself: ls -alrt | tail" nails says, "the | thing sends the output of the ls command to tail." nails says, "so if ls would normally give you 80 lines of output, this way you only see 10." nails says, "ls -alrt *.log | tail in your MUX game directory that has 2 years of log files filling it up. :)" nails says, "more and less are commands for reading through text files on unix." nails says, "as the saying goes, 'less is more'." nails says, "the precursor to these is the 'cat' command." nails says, "cat just spits out the contents of the file, regardless of the size. If it's a big file, you'll just spam your screen." nails says, "more will go through it page by page, and depending on the version, provides a number of other features, such as being able to search for things." nails says, "more had a drawback, though, in that once you passed by something you couldn't go back." nails says, "less was the answer to this. It let you scroll up and down through your file, and search forward and back." Dansa says, "Neat." nails says, "nowadays, most systems come with both commands already installed. In some, more is just a symlink to less (symlink or symbolic link being unixese for shortcut)." nails says, "Questions up to this point?" Tyr says, "Or, confusingly, what MacOS calls an alias." Nokomis is good. [>>Public] Medusa has disconnected. nails says, "Is this helpful stuff?" Dansa says, "Strangely enough, I am following." Dansa says, "Yes!" Faolin is partly lost because this is mostly new to her, but will read her log later and probably come back with a million and one questions. :) Dark Queen says, "It should serve me well later. =)" nails pokes F. ask some questions now! Faolin says, "The thing is, I won't know what to ask unless I actually see it work." nails says, "Do you have a shell acct?" Faolin says, "No." nails says, "you have OSX at work, right? we can go over some stuff during the day sometime." Faolin says, "Yeah, I have OSX at work, OS9 here at home." Bonn's advice is all Linux/GNU oriented, so I'm quieting myself :) nails says, "You can't separate out the fundamentals? :)" [>>Public] Medusa has connected. Bonn says, "That's why I'm quiet. You already did. :)" nails says, "Grey just mentioned a great point" nails says, "unix is case sensitive." nails says, "Earlier I mentioned that to start up a MUX, the command is: ./Startmush" nails says, "The capital S is important. './startmush' won't work." nails says, "A file named foo is different than one named Foo." [>>Public] Angie has disconnected. Brigid says, "Might include a note about spaces in filenames since te WIN users out there are used to being able to do that" nails says, "In general, I suggest people stick to using all lowercase when naming files and directories unless there is a specific reason to use capitalization, otherwise the opportunity for confusion is pretty high." nails says, "unix does allow spaces in filenames, but it can be annoying to deal with them." Brigid nods Nokomis says, "I generally avoid using them." Dansa nods. nails says, "You have to 'escape' the spaces, just like in MU* you have to escape the % sign." nails says, "Yeah." nails says, "Best to avoid them. in fact, I never use spaces in names on windows either." Brigid says, "I only have to deal with it when a win user sends me a file with spaces in the name and I generally rename it" nails says, "I don't see a great benefit to it." Bonn says, "" Bonn er nails patpats Bonn. nails says, "Ooh!" nails says, "I almost forgot one the the greatest joys ever in unix." Bonn says, "Spaces are generally something you see between Windows and Linux file transfers." Bonn hit the enter key too early. nails says, "Some of you know what I'm talking about." nails says, "It is: Tab completion" Grey says, "Booyah." nails takes a moment to hug his tab key. Brigid says, "Yay tab completeion!" Bonn falls asleep on nails and lets him talk. "TAB COMPLETION! RAWR!" nails says, "Bonn is scary when sleeping." nails says, "What is tab completion, you might ask?" nails says, "When you are typing a command, such as: cd /blah/foo/reallylongdirectory-with-annoying_name" nails says, "you can type: cd /blah/foo/really and then just hit tab." nails says, "If there is only one file or directory in /blah/foo that starts with 'really', the shell will complete the name for you." nails says, "You don't have to worry about typing the whole thing out, or making typoes in the process." Bonn coughs. Or /home/tc-aoe/mux2.3/game/TwoCitiesMUX-81950247680246(the date in two formats?).log. Hit tab, and it'll take you as far as it can before finding ambiguous names. If you're lucky, you get the whole thing! :) Like in nails' example. nails says, "At work, I deal with an application called NetBackup, which is installed in /opt/openv/netbackup. the admin commands ar ein bin/admin in that directory." nails says, "I type /o o n bi adm " Dansa says, "Handy." nails says, "My pinky is like a machine gun." Bonn bings constantly. Brigid's roomies are home and would probably like to use their computer so she is going to go. Nice to see a basic tutorial going on. Have much fun. nails waves. Bonn awws and wavelie Brigid idles for days. nails says, "I think we're going to wrap up in a little while, as we've been going for almost 3 hours." Dansa waves to Brigid. nails says, "So, last call for questions." Dansa says, "I think I'm good for now. Lots of info." nails says, "Do you feel your brain growing?" Ian has a non-topic related question.. Bonn wonders if it'd be an idea to grab my mom's self-help Linux books and say random things for you to talk about? Dark Queen says, "I feel it exploding." nails says, "That's a form of growing." nails says, "Yes, Ian?" Ian says, "What's planned for next Wednesday?" nails says, "I don't know. Mark mentioned something, but I'm not sure if it was settled. We can discuss with him when he awakens? I don't think he was married to doing it." Ian nods. Ian says, "Anyone here have anything they'd like to present on a future Wednesday?" nails says, "That's actually a good general question." nails says, "Yeah, what Ian said." nails says, "Things you'd like to present, or things you'd like to see." Dansa hmm. Ian says, "E.g. basic softcoding" nails is figuring we'll have a basic coding thing. nails says, "stopthat." Ian owsorrie. nails says, "Also, down the road a ways, once it's out of beta, I'll do a presentation on my recent code project." nails says, "Anatomy of @whee 101." Dansa laughs. Dark Queen says, "Nice." nails says, "For anybody who is reading this log and has made it to the bottom, come to puggy.mushpark.com 9033 and try @whee" Dansa says, "Most of my skills are specifically RP related, so." Dansa laughs. Dansa says, "Er, RP game related, even." Grey says, "What do to when your game crashes." nails says, "RP stuff is still topical." nails says, "This isn't techy-only." Gem says, "i have no mush skills." Faolin says, "How about a session on coding ... the lesson you gave me and Viv way back when on u() get() and all the others and what they do and how they're different?" Dansa says, "Something that _really_ might be cool is a discussion of the importance of the tone of the community in the mush environment, both for social sites, purpose sites, and for roleplay sites as well." nails says, "That's a good one, Grey. You can teach that." nails says, "How about one on how to advertise your game?" Grey says, "I only know MUX. ;P" Dansa says, "Advertising and recruitment is good." Ian would like to see that, too. nails says, "I'd also like to do one on starting a game from scratch. How to setup guests, channels, etc." Tyr says, "That would be nice." nails says, "Something like that I'll have to actually prepare for, though. That means it'll be a ways down the road." Tyr says, "Perhaps a discussion of using stock code vs. writing your own code would be topical as well." Dansa says, "That would be really helpful." Ian says, "You could, heh, put in softcode security with that, Tyr. ;-)" Tyr says, "s/stock/off-the-shelf/" Ian says, "And general game security." Tyr says, "That's not a bad idea." nails says, "I think we'll have to do the basic coding sessions before we get into that." Tyr says, "I wasn't suggesting otherwise, nails." nails says, "Also, everybody go out and tell your friends how much fun this was, and make them show up next time." nails says, "We're going to be doing something every week." nails says, "And on that note, I think I'll close out the log. over 600 lines. People will have fun reading that. :)" Tyr says, "In fact, I think a 'softcoding 101' lecture could be a good segueue into that." Dark Queen says, "Yeah." nails says, "Thank you all for showing up. I hope you'll come back for our other talks. :)" Dansa says, "Thank you, everyone. :)" Ian will see you all soon. :) nails says, "Wave to the camera." Ian waves! Dark Queen says, "I'll be sure to get the word out." Dansa laughs and waves. Tyr says, "Fabio waves to audience."