[QUOTE=era;302221664]Another couple of notes about the use of a temporary file.
First off, if you will never use the first few lines of the temp file, might as well throw them away already at the start.
[quote]
i will use those lines to have the iddle% and the amount of memory
Quote:
Originally Posted by era
Secondly, when you are done, you should remove your temporary file. Better yet, remove it even if you are interrupted.
Put those lines near the beginning of the script.
Properly speaking, you should probably use something like mktemp to generate a unique, unpredictable temporary file name. There are security issues with using predictable names, and having a static file name means you can't run two instances of the script at the same time.
its by design.
about the security risk, i decided that beeing my personal laptop, always in a secure network, and only the contents of top, that is not thread enough to consider some extra precausions
also, my /tmp is wiped out on poweroff and poweron
the script needs X to run, and the script is run by my user config files (fluxbox startup), so there wont be any other instance.
but deniying the posibilitie is a bad idea.
maybe using $$ in some part of the file can do the trick
and adding the trap to make sure i dont left behind tons of temporal files.
Hi All,
I have a pair of sun ultra 5_10 with SunOS 5.5.1.
Both are almost equally patched and set up with simillar applications.
host# uname -a
SunOS host 5.5.1 Generic_103640-24 sun4u sparc SUNW,Ultra-5_10
Even though both have
same amount of RAM ( 512 Mb ) ,
... (1 Reply)
Hi All,
Kindly help me in optimizing the server as it displays a great amount of CPU & MEM being utilised when the mysql process executes.
Below are the stats ---
--------------------------------------------------------------------------
# top
15:51:57 up 23:22, 5 users, load average:... (1 Reply)
What is amount of free RAM i have now?
total used free shared buffers cached
Mem: 1010 963 46 0 215 256
-/+ buffers/cache: 491 518
Swap: 1983 0 1983
Above is the output of... (1 Reply)
how can I find cpu usage memory usage swap usage and
I want to know CPU usage above X% and contiue Y times and memory usage above X % and contiue Y times
my final destination is monitor process
logical volume usage above X % and number of Logical voluage above
can I not to... (3 Replies)
I'm writing a bash script to log some selections from a sensors output (core temp, mb temp, etc.) and I would also like to have the current cpu usage as a percentage. I have no idea how to go about getting it in a form that a bash script can use. For example, I would simply look in the output of... (3 Replies)
Hi all,
Is it possible to get total memory usage and free memory usage without top? By Googling I found for total memory usage, use vmstat, for CPU, use mpstat, for disk I/O use iostat, is this correct? Will using sar gives the same result as ALL of these three (3) commands?
What about if I... (2 Replies)
Hi folks,
I'm a CS students enrolled in a sysadmin class where we've been covering bash scripting for the past few weeks. I have prior knowledge in java, c++, c#, python,and some scripting languages like asp.net w/c# and php. This bash stuff seems pretty neat and a bit different than what I am... (9 Replies)
I do not know shell scripting. But at work place, I have got an in and out shell scripting task. I just need to understand a very big script. Is there any tool in which I can place the script and it can tell me the meaning of the whole script? (3 Replies)
Discussion started by: lg123
3 Replies
LEARN ABOUT MOJAVE
mktemp
MKTEMP(1) BSD General Commands Manual MKTEMP(1)NAME
mktemp -- make temporary file name (unique)
SYNOPSIS
mktemp [-d] [-q] [-t prefix] [-u] template ...
mktemp [-d] [-q] [-u] -t prefix
DESCRIPTION
The mktemp utility takes each of the given file name templates and overwrites a portion of it to create a file name. This file name is
unique and suitable for use by the application. The template may be any file name with some number of 'Xs' appended to it, for example
/tmp/temp.XXXX. The trailing 'Xs' are replaced with the current process number and/or a unique letter combination. The number of unique
file names mktemp can return depends on the number of 'Xs' provided; six 'Xs' will result in mktemp selecting 1 of 56800235584 (62 ** 6) pos-
sible file names. On case-insensitive file systems, the effective number of unique names is significantly less; given six 'Xs', mktemp will
instead select 1 of 2176782336 (36 ** 6) possible unique file names.
If mktemp can successfully generate a unique file name, the file is created with mode 0600 (unless the -u flag is given) and the filename is
printed to standard output.
If the -t prefix option is given, mktemp will generate a template string based on the prefix and the _CS_DARWIN_USER_TEMP_DIR configuration
variable if available. Fallback locations if _CS_DARWIN_USER_TEMP_DIR is not available are TMPDIR and /tmp. Care should be taken to ensure
that it is appropriate to use an environment variable potentially supplied by the user.
If no arguments are passed or if only the -d flag is passed mktemp behaves as if -t tmp was supplied.
Any number of temporary files may be created in a single invocation, including one based on the internal template resulting from the -t flag.
The mktemp utility is provided to allow shell scripts to safely use temporary files. Traditionally, many shell scripts take the name of the
program with the pid as a suffix and use that as a temporary file name. This kind of naming scheme is predictable and the race condition it
creates is easy for an attacker to win. A safer, though still inferior, approach is to make a temporary directory using the same naming
scheme. While this does allow one to guarantee that a temporary file will not be subverted, it still allows a simple denial of service
attack. For these reasons it is suggested that mktemp be used instead.
OPTIONS
The available options are as follows:
-d Make a directory instead of a file.
-q Fail silently if an error occurs. This is useful if a script does not want error output to go to standard error.
-t prefix
Generate a template (using the supplied prefix and TMPDIR if set) to create a filename template.
-u Operate in ``unsafe'' mode. The temp file will be unlinked before mktemp exits. This is slightly better than mktemp(3) but still
introduces a race condition. Use of this option is not encouraged.
EXIT STATUS
The mktemp utility exits 0 on success, and >0 if an error occurs.
EXAMPLES
The following sh(1) fragment illustrates a simple use of mktemp where the script should quit if it cannot get a safe temporary file.
tempfoo=`basename $0`
TMPFILE=`mktemp /tmp/${tempfoo}.XXXXXX` || exit 1
echo "program output" >> $TMPFILE
To allow the use of $TMPDIR:
tempfoo=`basename $0`
TMPFILE=`mktemp -t ${tempfoo}` || exit 1
echo "program output" >> $TMPFILE
In this case, we want the script to catch the error itself.
tempfoo=`basename $0`
TMPFILE=`mktemp -q /tmp/${tempfoo}.XXXXXX`
if [ $? -ne 0 ]; then
echo "$0: Can't create temp file, exiting..."
exit 1
fi
SEE ALSO mkdtemp(3), mkstemp(3), mktemp(3), confstr(3), environ(7)HISTORY
A mktemp utility appeared in OpenBSD 2.1. This implementation was written independently based on the OpenBSD man page, and first appeared in
FreeBSD 2.2.7. This man page is taken from OpenBSD.
BSD December 30, 2005 BSD