Hi all, I have run into something that in almost 20 years of playing around with Unixes, I've never run into. I cannot get the cp command to behave nicely. I suppose it is just me being stupid and not seeing the obvious, or working too late into the night, but I'll be damned if I can figure it out.
So, in an attempt to create directions for the book that are as efficient as possible, I'm going to lay out what I cannot do and see if any of you wouldn't mind showing me the proper syntax for the cp command to copy some files. Yes, unbelievably I'm asking for help on how to use the cp command. Yes, it is embarrassing. But that's what happens when you have to show your ignorance and ask for help on such a trivial issue. Oh well. Ok, here are the steps to duplicate the issue: 1. download this tarball using wget: http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_11_RTM/src/nss-3.11.tar.gz For some reason (ISC mirrors are screwy), you may have trouble using a browser to navigate to the directory and/or download. wget seems to always resolve it and get it though. Weird. Anyway, you need to get this tarball. If worse comes to worse, get it here: http://linuxfromscratch.org/~randy/nss-3.11.tar.gz 2. Unpack it and cd into the root of the tree (just like we always do). 3. Change directories further into the tree. 'cd mozilla/security/nss' 4. Issue 'make nss_build_all' to compile everything. It should take only a couple of minutes on any modern system. 5. Make a test directory somewhere where you have write permission 'mkdir ~/td' 6. Change directories to ../../dist 'cd ../../dist' You should be able to look into a directory, from where you are right now, (Linux*/include) and see many symlinked header files and 3 directories (md, private, obsolete). In the subdirectories are many more symlinked header files. 7. Now using *one* command only, copy all these files and directories into the test directory you created earlier. Creating symlinks in the destination directory doesn't count. You must create actual files in the test directory. One would think he could do this: cp -a Linux*/include/* ~/td (or substitute -r for the -a) Copying the files non-recursively, i.e., 'cp Linux*/include/*.h ~/td' works as expected. Thanks in advance for the cluebat. -- Randy rmlscsi: [GNU ld version 2.15.94.0.2 20041220] [gcc (GCC) 3.4.3] [GNU C Library stable release version 2.3.4] [Linux 2.6.10 i686] 09:31:00 up 117 days, 18:55, 3 users, load average: 0.25, 0.41, 0.54 -- http://linuxfromscratch.org/mailman/listinfo/blfs-dev FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page