Is this you? As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.
Claim your profile
Articles by Stephen Kitt
Was Windows 1.0's lack of overlapping windows a legal or a technical matter?
Windows 1.0 didn't have overlapping windows; it wasn't until Windows 2.0 that overlapping windows were introduced. Obviously, with the small screen resolutions of the day, not having overlapping windows made having multiple windows visible challenging, at best. As someone who didn't touch Windows until v2 and not in any real capacity until 3.1, I only looked back at these older versions many years later.
Asked Viewed 22k times On all Unix-like operating systems, sudo is often provided as the standard package for executing commands as superuser (or an alternative user). When sudo is invoked by the user for the first time, many systems print the following well-known "Sudo Warning": We trust you have received the usual lecture from the local System Administrator. It usually boils down to these three things: #1) Respect the privacy of others. #2) Think before you type.
Why does part of the Windows 98 Setup program look older than the rest?
Asked Viewed 25k times When installing Windows 98, the part of the setup process where you enter things like product details looks... different. The scrollbars, buttons, title bar and such look more like they belong in Windows 3.1 or Windows 3.11, apparently using "ctl3d" style. After the "Restarting your computer" step, it looks like the process continues where it left off, except that it now looks like a Windows 98 program. What's going on here, exactly?
Did any processor implement an integer square root instruction?
Has any processor ever implemented an integer square root instruction? Obviously, floating-point square root instructions are quite common, but I've never seen one specifically for integers. One close candidate I know of is the Nintendo DS, which contained a memory-mapped integer divider/square rooter. This was helpful for 3D calculations, given that its ARM processor had no FPU or hardware divider. However, it's not a native processor instruction.
How did the Atari 2600 achieve a resolution of 160 x 192 pixels with only 128 bytes of memory?
According to wikipedia, the Atari 2600 had a resolution of 160 x 192 pixels. Had it been monochrome, it would had needed 160*192 = 30,720 bits of video RAM, or 3,840 bytes. But the total memory was 128 BYTES. How did it manage to reach that resolution with that memory? (Which was also needed to do the computations). According to wikipedia, the Atari 2600 had a resolution of 160 x 192 pixels. had it been monochrome, it would had needed 160*192 = 30,720 bits of video RAM, or 3,840 bytes.
How much better was DEC Alpha than contemporaneous x86?
Asked 3 years, 5 months ago Viewed 28k times The DEC Alpha, released in 1992, seems like an early implementation of a fully 64-bit microprocessor architecture. Its release led to quite a bit of both marketing hype and genuine vendor support in the mid-1990s, which supported the conclusion that Alpha would be a serious challenger to Intel x86, at least in the high-end performance and enterprise markets. It even had support from Microsoft with a native Windows NT 4.0 release.
Exactly what color was the text on monochrome terminals with green-on-black and amber-on-black screens?
If your aim is to recreate more closely the effect of an old CRT (at the expense of readability), whatever color you choose based on the previous answer, you should consider using a very bright (almost white) color for the text itself, and then using the chosen color as a glowing neon-like effect around the outline of the text.
How to know the source repository of a package in debian?
In Debian, AFAIK some packages are maintained in subversion, while some are maintained in git, some are maintained in Subversion/SVN (famously team-pkg-gnome) and others in some other VCS. Is there a way to know where the source of a package is without doing an apt-get source $PACKAGENAME ? I tried three methods and all failed :- none of the above are able to give/share this information. Is there anyway to get the information. I need to know the source repo.
awk does not end
I have the following code in a file named awktest1.awk: #!/bin/awk -f BEGIN{print "start"} {print $2, "\t", $5} END{print "end"} employee.txt where employee.txt contains the following data: 100 Thomas Manager Sales $5,000 200 Jason Developer Technology $5,500 300 Sanjay Sysadmin Technology $7,000 400 Nisha Manager Marketing $9,500 500 Randy DBA Technology $6,000 I run the awk command as: awk -f awktest1.awk but it just prints start and does not end.
Which NVIDIA driver should I use?
I'm currently using since the open drivers were giving me some trouble. But I have many more other drivers to select, see: What are the differences between them and which one should I select?
Why are UNIX/POSIX system call namings so illegible?
What is the reason to use such untelling system call names like and instead of and or, maybe more suitable on Unix and . Which brings me to the next point: why should someone want something like without camel case or at least underscores to make it readable? Of course the calls would have more characters but we all know that readability of code is more important right?
GNU Make does not ignore failed command
It still prints the error messages, but if you add another rule in the target it should be processed in spite of the failure. This is printing the command it's about to run. This is printing an error message because doesn't exist. To remove that, you'd add to the command (or to silence completely). exits with a non-zero exit code, so prints an error message. To remove that, you'd add to the command (so that it exits with a zero exit code in all cases).
How Do I Automate A Mount On Bootup
Add it to with the appropriate options: The third value is the filesystem type (I've specified here but you need to use the correct one for your situation), the fourth is the options, the fifth is the dump level (leave it at 0) and the fifth is the filesystem check pass (0 to disable , 1 for the root filesystem, 2 for the others). is a filesystem backup tool, but you're extremely unlikely to use it.
Download a list of webpages in a file and rename them to avoid overwriting?
$ wget -r -np -nH --cut-dirs=2 -p -k "http://www.example.com/1" -O test.html Cannot specify both -k and -O if multiple URLs are given, or in combination with -p or -r. See the manual for details. Usage: wget [OPTION]... [URL]... I wonder how to solve the problem? In my actual problem, I stored a list urls in a text file, such as http://www.example.com/1 http://www.example.com/2 http://www.example.com/3 I want to download each webpage with the necessary affiliated files to displace the webpage.
Provide strings stored in a file as a list of arguments to a command?
I install a list of URLs in a text file named myurls: http://www.examples.com/1 http://www.examples.com/2 http://www.examples.com/3 How shall I pass these URLs to wkhtmltopdf as inputs?
How to insert all lines from one file to another file?
Using awk (gawk, nawk, mawk): awk 'NR==FNR {x[FNR]=$0;next} {print x[FNR]"\n"$0}' file2 file1 > outputfile NR==FNR {x[FNR]=$0;next}: NR==FNR is matched only if the current record number is equal to the current file record number (hence it's matched only while processing the first file): stores the currently processed record into the array x at an index equal to the current file record number and skips the current record {print x[FNR]"\n"$0}: prints the content of the array x at an index equal...
How to create loop sequence?
Simply append the character to the variable, instead of the loop counter: Note that instead of works just as well, but I think the version is neater/clearer. If you want to do this with a while loop instead, you could do something like this: expands to the length of the string in the variable. Note that both of the above code snippets (as well as the code in the question) assume that the var is empty or not set at the start of the snippet.
Deleting files with spaces in their names
I am trying to delete all the files with a space in their names. I am using following command. But it is giving me an error Command : ls | egrep '. ' | xargs rm Here if I am using only ls | egrep '. ' command it is giving me all the file name with spaces in the filenames. But when I am trying to pass the output to rm, all the spaces (leading or trailing) gets deleted. So my command is not getting properly executed. Any pointers on how to delete the file having atleast one space in their name?
Open a .raw file as text in less
The output of my program has a .raw file extension. If I try to open this with I get: The file isn't an image file, it's just text. Is there a way to tell that the file should be opened as plain text?
dpkg replacing files on a FAT filesystem
When you upgrade or reinstall a package with (and ultimately anything that uses it, like apt-get etc) it backs up the existing files by creating a hard link to the file before replacing it. That way if the unpack fails it can easily put back the existing files. That's great, since it protects the operating system from Bad Things™ happening. Except... it only works if your filesystem supports hard links. Not all filesystems do - such as FAT filesystems.
How do Linux permissions work when a process is running as a specific group?
A process is run with a uid ang a gid. Both have permissions assigned to them. You could call chroot with a userspec of a user and group, where actually the user is not in that group. The process would then executed with the users uid and the given groups gid. See an example. I have a user called , and he is in the group : I have a file as follows: He cannot read it: Now, I can execte the process in the context of the user AND the group .
Combining large amount of files
I have ±10,000 files ( - ) all consisting of one column, and an equal number of rows. What I want is, in essence, simple; merge all files column-wise in a new file . I have tried using: However (although this seems to work for a small subset of result files, this gives the following error when performed on the whole set: . There must be an 'easy' way to get this done, but unfortunately I'm quite new to unix. Thanks in advance! PS: To give you an idea of what (one of my) datafile(s) looks like:
cp says it's removing files, but shouldn't be
Making a quick backup: root@guilmon:/mnt/backup/guilmon/home# cp -uvfrx --preserve=all /home/rena/ . The output is surprising - some files are said to be removed! removed ‘./rena/dev/lua/conkybitcoin/conkybitcoin.lua’ The files being removed seem to be random and haven't changed. Why does it say it's removing them? Even stranger, it doesn't appear to have actually removed that file (nor the source). What's going on?
How to truncate the second column to given length
If you want to print only the first 75 characters of the second column (including spaces), you can do: $ perl -pe 's/(\t.{75}).*/$1/' file XY981743 foobarlkasdf saflkas asfZR!sgfad asdSAD asdsadf SAdfasdf46lk lksad bar fool Or, with sed: $ sed 's/\(.*\t.\{75\}\).*/\1/' file XY981743 foobarlkasdf saflkas asfZR!sgfad asdSAD asdsadf SAdfasdf46lk lksad bar fool And with GNU sed: $ sed -r 's/(.*\t.{75}).*/\1/' file XY981743 foobarlkasdf saflkas asfZR!sgfad asdSAD asdsadf SAdfasdf46lk lksad bar...
Upgrading packages automatically
is very safe to run as it won't do anything to the system, instead stopping to ask for your confirmation ;) You would have to add a switch, which is intended for unattended upgrades and makes apt assume that you always answer 'yes' to questions: . The man page states that but running dist-upgrade unattanded is always risky so you may want to avoid that. You can always check what apt would do by adding a switch, like so: .
What provides /etc/exports and how do I find that out?
When you're looking for a file belonging to a package which is installed on your machine, you can use dpkg -S (equivalent to dpkg-query -S): dpkg -S /etc/exports In this case though it won't find anything, because /etc/exports is created by a maintainer script (and that type of file is explicitly not handled by dpkg-query, or for that matter by apt-file).
Grep first 50 lines of files for pattern
How might one search the first 50 lines of files in a directory for a given string? I'm specifically looking for which database table files (from mysqldump) define a specific field, but I don't want to grep the whole files, which after 20-40 lines of CREATE TABLE continue on to hundreds of INSERT statements. I could write a Python script to iterate over the first few lines of each file, but from experience Python, though powerful, is slow.
What is the difference between find . and find . -print
is the default action. Some predicates are considered as actions as opposed to filters or conditions. For instance, is not an action. is an action even though it can also be used as a condition. Actions include , and . Some implementations have other non-standard action predicates like the , , , , ... Where none of contain actions is equivalent to: (note the braces above which are important if there are some operators).
what does mount -o remount,ro / actually do (under the hood)
Mounting or remounting a filesystem is done using the syscall. When remounting, this takes the target location (the mountpoint), the flags to be used in the mount operation, and any extra data used for the specific filesystem involved. When remounting read-only, the flags used are and ; you're also supposed to provide any other flags which were used when the filesystem was first mounted.
Show More
loading
Actions
Is this you?
As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.Get in touch with Stephen
Contact Stephen, search articles and posts on X, monitor coverage, and track replies from one place.
Learn more about Muck Rack