1
0
mirror of git://git.sv.gnu.org/coreutils.git synced 2026-04-16 08:38:48 +02:00
Files
coreutils/tests/other-fs-tmpdir
Paul Eggert d60b2922ff doc: modernize usage of “disk” and “core”
In documentation and comments, don’t assume that secondary storage
devices are disk devices.  Similarly, don’t assume that main memory
uses magnetic cores, which became obsolete in the 1970s.
* src/du.c (usage):
* src/ls.c (usage):
* src/shred.c (usage): Reword to avoid “disk” in usage messages.
2021-07-28 12:30:12 -07:00

56 lines
1.7 KiB
Bash

#!/bin/sh
# Use stat to find a writable directory on a file system different from that
# of the current directory. If one is found, create a temporary directory
# inside it.
# Copyright (C) 1998-2021 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
test "${CANDIDATE_TMP_DIRS+set}" = set \
|| CANDIDATE_TMP_DIRS="$TMPDIR /tmp /dev/shm /var/tmp /usr/tmp $HOME"
other_partition_tmpdir=
dot_mount_point=$(stat -c %d .)
for d in $CANDIDATE_TMP_DIRS; do
# Skip nonexistent directories.
test -d "$d" || continue
d_mount_point=$(stat -L -c %d "$d")
# Same partition? Skip it.
test "x$d_mount_point" = "x$dot_mount_point" && continue
# See if we can create a directory in it.
if mkdir "$d/tmp$$" > /dev/null 2>&1; then
other_partition_tmpdir="$d/tmp$$"
break
fi
done
if test -z "$other_partition_tmpdir"; then
skip_ \
"requires a writable directory on a different file system,
and I couldn't find one. I tried these:
$CANDIDATE_TMP_DIRS
Set your environment variable CANDIDATE_TMP_DIRS to make
this test use a different list."
fi
test "$VERBOSE" = yes && set -x